Вопрос о CreateObject () в VB6 / VBA

Вы пытаетесь вращать shapely.Polygon, а не GeoPandas.GeoSeries, поэтому для этого вам нужно использовать стройную фигуру.

import geopandas as gpd
import shapely

p1 = shapely.geometry.Polygon([(0, 0), (1, 0), (1, 1), (0, 1)])
p2 = shapely.geometry.Polygon([(2, 0), (3, 0), (3, 1), (2, 1)])

g = gpd.GeoSeries([p1, p2])

gdf = gpd.GeoDataFrame(geometry=g)
gdf['angle'] = [25, 45]

for index, row in gdf.iterrows():
    rotated = shapely.affinity.rotate(row['geometry'], row['angle'])
    gdf.loc[index, 'geometry'] = rotated
13
задан Shane Miskin 5 December 2008 в 21:19
поделиться

3 ответа

Это - ProgID компонента, который регистрируется в реестре Windows под ключом HKCR:

HKEY_CLASSES_ROOT\Scripting.FileSystemObject

ProgID являются человекочитаемыми идентификаторами для COM-объектов. Они указывают на фактический CLSIDs, который в этом случае является:

HKEY_CLASSES_ROOT\CLSID\{0D43FE01-F093-11CF-8940-00A0C9054228}

Это - место, где можно найти фактический COM .dll, который включает реализацию компонента.

В первом примере кода Вы обеспечили, Вы делаете раннее связывание, и во втором Вы делаете позднее связывание.

25
ответ дан 1 December 2019 в 20:58
поделиться

Используя VB6 IDE, выберите Project, References, затем для выбора ссылочной 'Microsoft Scripting Runtime'.

Если бы Вы не знали то, чем называют ссылку, то Вы могли использовать Ссылочную Кнопку обзора диалогового окна для выбора файла / система 32/scrrun.dll.

С выбранной ссылкой закройтесь, Ссылочное диалоговое окно затем открывают Object Browser (Меню View). Измените выпадающее на наиболее вероятного кандидата, будучи 'Пишущими сценарий'. Это покажет классы библиотеки, одним из которых является 'FileSystemObject'. Следовательно, Вы обнаружите, строка, требуемая для CreateObject, 'Пишет сценарий. FileSystemObject'.

Если бы Вы не знали Ссылочное имя или имя файла, но Вы действительно знали имя класса затем, то Вы могли искать реестр "FileSystemObject", и нужно скоро показать, что полностью определенное имя, которого Вы требуете, 'Пишет сценарий. FileSystemObject'.

2
ответ дан 1 December 2019 в 20:58
поделиться

Я запустил бы путем поиска FileSystemObject в библиотеке MSDN по http://msdn.microsoft.com/library

Сайт переполнен документацией, включая детали того, как назвать CreateObject.

1
ответ дан 1 December 2019 в 20:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: