<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>Data+ International - Вопросы и Ответы - Вопросы с тегом python</title>
<link>https://forum.esri-cis.com/index.php?qa=tag&amp;qa_1=python</link>
<description>Powered by Question2Answer</description>
<item>
<title>Ошибка cv2.cvtColor в модуле ScannedMapDigitizer</title>
<link>https://forum.esri-cis.com/index.php?qa=47621&amp;qa_1=%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-cv2-cvtcolor-%D0%B2-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B5-scannedmapdigitizer</link>
<description>&lt;p&gt;Пытаюсь повторить&amp;nbsp;&lt;a href=&quot;https://developers.arcgis.com/python/guide/geo-referencing-and-digitization-of-scanned-maps/&quot; rel=&quot;nofollow&quot;&gt;https://developers.arcgis.com/python/guide/geo-referencing-and-digitization-of-scanned-maps/&lt;/a&gt;&lt;/p&gt;&lt;p&gt;from arcgis.learn import ScannedMapDigitizer&lt;/p&gt;&lt;p&gt;smd = ScannedMapDigitizer(r&quot;D:\Arcgis\TEST\RASTER&quot;, r&quot;D:\Arcgis\TEST\RASTER&quot;)&lt;br&gt;smd.create_mask(color_list=[[115, 178, 115]], color_delta=5, kernel_size=[2, 2], kernel_type=&quot;rect&quot;, show_result=False)&lt;br&gt;smd.create_template_image([100, 100,100], 10, 4, show_result= False)&lt;br&gt;extent = {&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;'spatialReference': {'wkid': 4326},&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;'xmin': -180,&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;'ymin': -89,&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;'xmax': 180,&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;'ymax': 85&amp;nbsp;&lt;br&gt;&amp;nbsp; &amp;nbsp;}&lt;/p&gt;&lt;p&gt;smd.set_search_region_extent(extent)&lt;br&gt;ssearch_extent = {&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 'spatialReference': {'wkid': 4326},&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;'xmin': -180,&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;'ymin': -89,&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;'xmax': 180,&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;'ymax': 85&lt;br&gt;&amp;nbsp; &amp;nbsp; }&lt;br&gt;smd.prepare_search_region(r&quot;D:\Arcgis\TEST\RASTER\M1\cover2_admin_Copy.shp&quot;, [255, 255, 255], search_extent, 2068, 3744, show_result=True)&lt;br&gt;smd.match_template_multiscale(0.2, 2.0, 40, show_result=False)&lt;br&gt;smd.georeference_image((150, 50), show_result=False)&lt;br&gt;smd.digitize_image(show_result=False)&lt;/p&gt;&lt;p&gt;Однако на этапе создания маски smd.create_mask(color_list=[[115, 178, 115]], color_delta=5, kernel_size=[2, 2], kernel_type=&quot;rect&quot;, show_result=False) появляется ошибка :&lt;/p&gt;&lt;p&gt;&lt;strong&gt;error&lt;/strong&gt;: OpenCV(4.5.5) D:\a\opencv-python\opencv-python\opencv\modules\imgproc\src\color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cv::cvtColor&lt;/p&gt;&lt;p&gt;Подскажите что может быть не так по той информации что нашел ошибка означает что нету доступа к изображению хотя он есть и путь прописан правильно&lt;/p&gt;</description>
<category>arcgis</category>
<category>python</category>
<guid isPermaLink="true">https://forum.esri-cis.com/index.php?qa=47621&amp;qa_1=%D0%BE%D1%88%D0%B8%D0%B1%D0%BA%D0%B0-cv2-cvtcolor-%D0%B2-%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D0%B5-scannedmapdigitizer</guid>
<pubDate>Mon, 18 Apr 2022 08:37:41 +0000</pubDate>
</item>
<item>
<title>Добавление параметра в скрипт</title>
<link>https://forum.esri-cis.com/index.php?qa=47411&amp;qa_1=%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D0%B0-%D0%B2-%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82</link>
<description>Имеется скрипт&lt;br /&gt;
&lt;br /&gt;
import arcpy&lt;br /&gt;
&lt;br /&gt;
domains = arcpy.da.ListDomains(&amp;quot;Database Connections\sde.sde&amp;quot;) #база из которой берутся доменные (эталонные) значения&lt;br /&gt;
for dom in domains:&lt;br /&gt;
... &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;arcpy.GetParameterAsText(0)&lt;br /&gt;
&lt;br /&gt;
как правильно прописать чтобы передать список доменов которые есть в базе ?&lt;br /&gt;
&lt;br /&gt;
Что нужно выбрать в закладке Parameters чтобы они отобразились ?&lt;br /&gt;
&lt;br /&gt;
Пробовал String но там ничего не показывает&lt;br /&gt;
&lt;br /&gt;
Версия 10.5.1</description>
<category>Программные продукты Esri</category>
<category>python</category>
<category>10-x</category>
<guid isPermaLink="true">https://forum.esri-cis.com/index.php?qa=47411&amp;qa_1=%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5-%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D0%B0-%D0%B2-%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82</guid>
<pubDate>Wed, 03 Feb 2021 12:51:22 +0000</pubDate>
</item>
<item>
<title>Кирилица в наименование пути</title>
<link>https://forum.esri-cis.com/index.php?qa=47192&amp;qa_1=%D0%BA%D0%B8%D1%80%D0%B8%D0%BB%D0%B8%D1%86%D0%B0-%D0%B2-%D0%BD%D0%B0%D0%B8%D0%BC%D0%B5%D0%BD%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BF%D1%83%D1%82%D0%B8</link>
<description>Имеется скрипт&lt;br /&gt;
&lt;br /&gt;
mxd=arcpy.mapping.MapDocument(u&amp;quot;R:/Проект/Проверка.mxd&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
&amp;gt;&amp;gt;&amp;gt; for lyr in arcpy.mapping.ListLayers(mxd):&lt;br /&gt;
&lt;br /&gt;
... print lyr.dataSource&lt;br /&gt;
&lt;br /&gt;
Выдаёт ошибку&lt;br /&gt;
&lt;br /&gt;
Runtime error&lt;br /&gt;
&lt;br /&gt;
Traceback (most recent call last):&lt;br /&gt;
&lt;br /&gt;
File &amp;quot;&amp;lt;string&amp;gt;&amp;quot;, line 1, in &amp;lt;module&amp;gt;&lt;br /&gt;
&lt;br /&gt;
File &amp;quot;c:\program files (x86)\arcgis\desktop10.5\arcpy\arcpy\arcobjects\mixins.py&amp;quot;, line 652, in __init__&lt;br /&gt;
&lt;br /&gt;
super(MapDocumentMethods, self).__init__(mxd)&lt;br /&gt;
&lt;br /&gt;
File &amp;quot;c:\program files (x86)\arcgis\desktop10.5\arcpy\arcpy\arcobjects\_base.py&amp;quot;, line 47, in __init__&lt;br /&gt;
&lt;br /&gt;
for arg in args))&lt;br /&gt;
&lt;br /&gt;
RuntimeError: Object: CreateObject cannot open map document&lt;br /&gt;
&lt;br /&gt;
С mxd файлом имя которого на английском такую ошибку не выдаёт. &amp;nbsp;В чем может быть проблема</description>
<category>python</category>
<guid isPermaLink="true">https://forum.esri-cis.com/index.php?qa=47192&amp;qa_1=%D0%BA%D0%B8%D1%80%D0%B8%D0%BB%D0%B8%D1%86%D0%B0-%D0%B2-%D0%BD%D0%B0%D0%B8%D0%BC%D0%B5%D0%BD%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D0%BF%D1%83%D1%82%D0%B8</guid>
<pubDate>Wed, 27 May 2020 14:20:49 +0000</pubDate>
</item>
<item>
<title>Как узнать какие таблицы присоединены к слою в mxd</title>
<link>https://forum.esri-cis.com/index.php?qa=47159&amp;qa_1=%D0%BA%D0%B0%D0%BA-%D1%83%D0%B7%D0%BD%D0%B0%D1%82%D1%8C-%D0%BA%D0%B0%D0%BA%D0%B8%D0%B5-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D1%8B-%D0%BF%D1%80%D0%B8%D1%81%D0%BE%D0%B5%D0%B4%D0%B8%D0%BD%D0%B5%D0%BD%D1%8B-%D0%BA-%D1%81%D0%BB%D0%BE%D1%8E-%D0%B2-mxd</link>
<description>&lt;p&gt;Необходимо написать скрипт который бы показывал какие таблицы&amp;nbsp; присоединены (Join)&amp;nbsp;к слою/слоям в mxd файле. Через supports не нашёл ничего подходящего. Поиск привел к этому &lt;a rel=&quot;nofollow&quot; href=&quot;https://gis.stackexchange.com/questions/7703/detecting-join-programmatically-using-arcpy&quot;&gt;https://gis.stackexchange.com/questions/7703/detecting-join-programmatically-using-arcpy&lt;/a&gt; где пользователь пишет что в &lt;a rel=&quot;nofollow&quot; href=&quot;http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/Layer/00s300000008000000/&quot;&gt;arcpy.Layer class&lt;/a&gt; нет такой функции. В связи с этим вопрос как организовать код чтобы можно было вытащить наименование таблицы&lt;/p&gt;</description>
<category>Программные продукты Esri</category>
<category>python</category>
<guid isPermaLink="true">https://forum.esri-cis.com/index.php?qa=47159&amp;qa_1=%D0%BA%D0%B0%D0%BA-%D1%83%D0%B7%D0%BD%D0%B0%D1%82%D1%8C-%D0%BA%D0%B0%D0%BA%D0%B8%D0%B5-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D1%8B-%D0%BF%D1%80%D0%B8%D1%81%D0%BE%D0%B5%D0%B4%D0%B8%D0%BD%D0%B5%D0%BD%D1%8B-%D0%BA-%D1%81%D0%BB%D0%BE%D1%8E-%D0%B2-mxd</guid>
<pubDate>Fri, 17 Apr 2020 08:41:53 +0000</pubDate>
</item>
<item>
<title>Как отцентрировать надпись</title>
<link>https://forum.esri-cis.com/index.php?qa=46565&amp;qa_1=%D0%BA%D0%B0%D0%BA-%D0%BE%D1%82%D1%86%D0%B5%D0%BD%D1%82%D1%80%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D1%82%D1%8C-%D0%BD%D0%B0%D0%B4%D0%BF%D0%B8%D1%81%D1%8C</link>
<description>&lt;p&gt;Задача заключается в следующем. В ArcMap 10.2.2 необходимо надписать точку. При этом надпись должна быть представлена в &lt;span style=&quot;text-decoration: underline;&quot;&gt;виде дроби&lt;/span&gt;. Дробь должна быть &lt;span style=&quot;text-decoration: underline;&quot;&gt;выровнена по центру&lt;/span&gt;. Значения для дроби берутся из разных полей.&lt;/p&gt;&lt;p&gt;Выражение на Phyton я смог написать: &lt;strong&gt;u'&amp;lt;UND&amp;gt;{0:^5}&amp;lt;/UND&amp;gt;\n{1:^5}'.format([Field1], [Field2]), &lt;/strong&gt;однако после написания одних объектов все нормально, после написания других gis просто вылетает и даже не выдает ошибки.&lt;/p&gt;&lt;p&gt;Вопрос, есть ли аналог выражения на VBScript? Или может кто то знает другой способ выранивания дроби по центру?&lt;/p&gt;&lt;p&gt;P.s. В аннотации переводить не хочу, дабы не захломлять базу.&lt;/p&gt;</description>
<category>Программные продукты Esri</category>
<category>arcgis-desktop</category>
<category>python</category>
<category>vbscript</category>
<guid isPermaLink="true">https://forum.esri-cis.com/index.php?qa=46565&amp;qa_1=%D0%BA%D0%B0%D0%BA-%D0%BE%D1%82%D1%86%D0%B5%D0%BD%D1%82%D1%80%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D1%82%D1%8C-%D0%BD%D0%B0%D0%B4%D0%BF%D0%B8%D1%81%D1%8C</guid>
<pubDate>Fri, 10 Nov 2017 11:30:36 +0000</pubDate>
</item>
<item>
<title>arcpy.da.UpdateCursor повторно походит по записям в таблице</title>
<link>https://forum.esri-cis.com/index.php?qa=46553&amp;qa_1=arcpy-da-updatecursor-%D0%BF%D0%BE%D0%B2%D1%82%D0%BE%D1%80%D0%BD%D0%BE-%D0%BF%D0%BE%D1%85%D0%BE%D0%B4%D0%B8%D1%82-%D0%BF%D0%BE-%D0%B7%D0%B0%D0%BF%D0%B8%D1%81%D1%8F%D0%BC-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D0%B5</link>
<description>&lt;p&gt;Здравствуйте. Столкнулся со странным поведением курсора, который обновляет записи в таблице. Возможно, кто-то сталкивался с похожей проблемой и подскажет решение.&lt;/p&gt;&lt;p&gt;На сервере установлен ArcGIS for Server. В СУБД MS SQL создана база пространственных данных. В базе есть полигональный слой, который необходимо периодически обновлять на основании внешних шейп-файлов. Был подготовлен скрипт на python, который читает шейп-файлы и обновляет записи в базе данных, если выполняются определенные условия. Запускается скрипт на том же сервере.&lt;/p&gt;&lt;p&gt;Код метода для обновления:&lt;/p&gt;&lt;blockquote&gt;&lt;pre&gt;&lt;span style=&quot;font-size:11px&quot;&gt;&lt;span style=&quot;font-family:courier new,courier,monospace&quot;&gt;class Dataset(object):
    def update(self, new_features):
        with arcpy.da.Editor(self.workspace):
            with arcpy.da.UpdateCursor(self.path, self.fields) as cursor:
                for row in cursor:
                    feature = Feature.create(self.fields, row)
                    if feature.id in new_features:
                        new_feature = new_features[feature.id]
                        if new_feature.date &amp;gt; feature.date:
                            cursor.updateRow(new_feature.as_row(self.fields))
                        else:
                            pass
                    else:
                        cursor.deleteRow()&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/blockquote&gt;&lt;p&gt;&amp;nbsp;Проблема заключается в том, что курсор проходит по всем записям в таблице (обновляя, удаляя или пропуская каждую запись), а потом проходит по некоторым из обновленных записей повторно. Поясню на примере: в таблице всего 10000 записей. Курсор прошел по всем 10000, и еще раз по 200 обновленным записям. Причем иногда это может быть 10 лишних записей, иногда 800, а иногда и 0. Закономерность уследить не удалось. Почему курсор проходит по обновленным записям повторно?&lt;/p&gt;&lt;p&gt;Версия ArcGIS for Server 10.3.1, СУБД MS SQL Server 2012, скрипт подключается к базе под учетной записью владельца данных. Версионность для обновляемого слоя не включена, т.к. никто кроме владельца данных (скрипта) изменять данные не должен. Спасибо&lt;/p&gt;</description>
<category>Программные продукты Esri</category>
<category>python</category>
<category>arcgis-server</category>
<guid isPermaLink="true">https://forum.esri-cis.com/index.php?qa=46553&amp;qa_1=arcpy-da-updatecursor-%D0%BF%D0%BE%D0%B2%D1%82%D0%BE%D1%80%D0%BD%D0%BE-%D0%BF%D0%BE%D1%85%D0%BE%D0%B4%D0%B8%D1%82-%D0%BF%D0%BE-%D0%B7%D0%B0%D0%BF%D0%B8%D1%81%D1%8F%D0%BC-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D0%B5</guid>
<pubDate>Wed, 18 Oct 2017 01:56:15 +0000</pubDate>
</item>
<item>
<title>Экспорт вложений из ГБД с кириллическими символами</title>
<link>https://forum.esri-cis.com/index.php?qa=46506&amp;qa_1=%D1%8D%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82-%D0%B2%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9-%D0%B8%D0%B7-%D0%B3%D0%B1%D0%B4-%D1%81-%D0%BA%D0%B8%D1%80%D0%B8%D0%BB%D0%BB%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%BC%D0%B8-%D1%81%D0%B8%D0%BC%D0%B2%D0%BE%D0%BB%D0%B0%D0%BC%D0%B8</link>
<description>&lt;p&gt;&lt;span style=&quot;color:rgb(36, 39, 41); font-family:arial,helvetica neue,helvetica,sans-serif; font-size:15px&quot;&gt;Нашел скрипт .py экспортирующий вложения из ГБД.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:rgb(36, 39, 41); font-family:arial,helvetica neue,helvetica,sans-serif; font-size:15px&quot;&gt;С латинскими названиями вложений работает, но при попадании на кириллические символы стопорится и вылетает.&amp;nbsp;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span style=&quot;color:rgb(36, 39, 41); font-family:arial,helvetica neue,helvetica,sans-serif; font-size:15px&quot;&gt;Как указать правильную кодировку для работы скрипта с лат и кириллическими символами?&lt;/span&gt;&lt;/p&gt;&lt;pre&gt;    import arcpy
    from arcpy import da
    import os

    inTable = arcpy.GetParameterAsText(0)
    fileLocation = arcpy.GetParameterAsText(1)

    with da.SearchCursor(inTable, ['DATA', 'ATT_NAME', 'ATTACHMENTID']) as cursor:
    for item in cursor:
    attachment = item[0]
    filenum = &quot;ATT&quot; + str(item[2]) + &quot;_&quot;
    filename = filenum + str(item[1])
    open(fileLocation + os.sep + filename, 'wb').write(attachment.tobytes())
    del item
    del filenum
    del filename
    del attachment&lt;/pre&gt;</description>
<category>arcgis-desktop</category>
<category>python</category>
<category>разработка</category>
<category>кодировка</category>
<guid isPermaLink="true">https://forum.esri-cis.com/index.php?qa=46506&amp;qa_1=%D1%8D%D0%BA%D1%81%D0%BF%D0%BE%D1%80%D1%82-%D0%B2%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D0%B9-%D0%B8%D0%B7-%D0%B3%D0%B1%D0%B4-%D1%81-%D0%BA%D0%B8%D1%80%D0%B8%D0%BB%D0%BB%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%BC%D0%B8-%D1%81%D0%B8%D0%BC%D0%B2%D0%BE%D0%BB%D0%B0%D0%BC%D0%B8</guid>
<pubDate>Tue, 04 Jul 2017 18:45:33 +0000</pubDate>
</item>
<item>
<title>Изменение части строк в атрибутивной таблице</title>
<link>https://forum.esri-cis.com/index.php?qa=46462&amp;qa_1=%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5-%D1%87%D0%B0%D1%81%D1%82%D0%B8-%D1%81%D1%82%D1%80%D0%BE%D0%BA-%D0%B2-%D0%B0%D1%82%D1%80%D0%B8%D0%B1%D1%83%D1%82%D0%B8%D0%B2%D0%BD%D0%BE%D0%B9-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D0%B5</link>
<description>Для добавление русских символов в строку, например, названия рек, я использовала следующую команду u'р. ' + !Name!, а как убрать лишние символы из строки чтобы осталось только название, т.е.из поля Name в строке &amp;quot;город Болгар&amp;quot;, убрать слово &amp;quot;город&amp;quot;).</description>
<category>Программные продукты Esri</category>
<category>arcgis-desktop</category>
<category>python</category>
<guid isPermaLink="true">https://forum.esri-cis.com/index.php?qa=46462&amp;qa_1=%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5-%D1%87%D0%B0%D1%81%D1%82%D0%B8-%D1%81%D1%82%D1%80%D0%BE%D0%BA-%D0%B2-%D0%B0%D1%82%D1%80%D0%B8%D0%B1%D1%83%D1%82%D0%B8%D0%B2%D0%BD%D0%BE%D0%B9-%D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D0%B5</guid>
<pubDate>Mon, 29 May 2017 12:57:49 +0000</pubDate>
</item>
</channel>
</rss>