Форум НПФ  

Вернуться   Форум НПФ "ТОПОМАТИК" > Программные продукты "Топоматик Robur" на платформе "Robur AP3" > Средства разработки Топоматик Robur > Вопросы и ответы
Ник
Пароль
Регистрация FAQ Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #11  
Старый 12-22-2021, 10:20
Василий Гончаров Василий Гончаров вне форума
Разработчик Robur
 
Регистрация: Oct 2016
Сообщения: 154
По умолчанию

Цитата:
Сообщение от VSP
И еще вопрос.
Делаю выбор откоса на C#:
drawingLayer.SelectionSet.PickOneObjectAtScreen(ob j => obj is Topomatic.Planchet.Entities.DwgSlope, "Выберите откос")
Работает.
Теперь на питоне:
filter = lambda obj: isinstance(obj, Topomatic.Planchet.Entities.DwgSlope)
slope = cadview.SelectionSet.PickOneObjectAtScreen(filter, 'Pick a slope')
вызывает ошибку:
attribute 'Planchet' of 'namespace#' object is read-only
System.MissingMemberException

Как сделать на питоне? Robur Rail 16.0


Скорее всего причина в том, что Вы не можете ссылаться по абсолютному пути, так, как Вы делаете на языке C#. Вам необходимо сначала включить требуемые элементы через import и AddReference. Например:
Код:
import Topomatic import clr from robur import * clr.AddReference('Topomatic.FoundationClasses') from Topomatic.FoundationClasses import ILayeredObject ... obj = cadview.SelectionSet.PickOneObjectAtScreen(lambda obj: isinstance(obj, ILayeredObject), 'Выберите объект')
Ответить с цитированием
Ответ


Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 3:42.

Навигация по основному сайту
Главная Каталог продуктов и услуг Где купить Сопровождение
Вакансии О компании Обзоры Канал на YouTube

vBulletin v3.0.7 , Copyright ©2000-2022, Jelsoft Enterprises Ltd.
Copyright © 2003-2022, НПФ "ТОПОМАТИК".