Форум ArchiCAD и BIM по-русски - CADstudio.ru
ARCHICAD => Библиотеки. Библиотечные элементы. GDL => GDL-программирование => Тема начата: Andrey_bk от Мая 28, 2018, 15:43:55
-
Здравствуйте уважаемые! Собственно интересующий вопрос в заголовке. Допустим я задаю инструментом Зона участок с N количеством углов. Возможно ли вывести в каталог координаты (относительно начала координат) угловых точек из этой зоны? GDL знаю весьма поверхностно, но имею большое желание реализовать данный функционал, т.к. это мне существенно упростит работу по оформлению проектов межевания территории.
-
Если делать непосредственно внутри зоны, то потребуется создать динамический массив с координатами точек полигона. Что крайне сложно. По умолчанию библ. эл-т - подтип паспорт зоны не имеет такого массива. Ну а затем написать обычную выноску с координатами. Или внутри зоны или как ссылку на макрос. Можно даже на стандартную.
Наверное вам надо нечто вроде такого полигона
(https://www.youtube.com/edit?o=U&video_id=DQel_7OmCJk) Но с возможностью махать топором. В этом эл-те нельзя разделить полигон топориком.
-
Наверное вам надо нечто вроде такого полигона
(https://www.youtube.com/edit?o=U&video_id=DQel_7OmCJk)
Ссылка открывает список моих видео на youtube. Можно уточнить ссылку, или хотя бы название видео?
-
Извините из менеджера скопировал.
Полигон (https://www.youtube.com/watch?v=DQel_7OmCJk&t=3s)
-
Если делать непосредственно внутри зоны, то потребуется создать динамический массив с координатами точек полигона.
Начал вникать по мере возможности, сходу вникнуть в принцип работы с массивами не получилось. В официальном руководстве GDL информации по массивам буквально пол страницы и все. В разделе форума с литературой по GDL все посты старые и ссылки не рабочие. Прошу помочь с поиском литературы для изучения вопроса.
И еще, я так понял, что проще наверное создать отдельный библиотечный элемент, т.к. инструмент зона не выдает данных о координатах точек. Видел здесь на форме элемент крыльца построенного на базе редактируемого многоугольника от Александра Ани. А это как раз то что мне нужно. Но разобраться в коде его элемента без знаний о массивах не получилось.
По сути мне нужен редактируемый многоугольник с N количеством углов и специальной точкой начала координат от которой можно получить координаты угловых точек. Плюс к этому должна быть известна площадь многоугольника.
-
т.к. инструмент зона не выдает данных о координатах точек.
К зоне может быть применён аксессуар (пол/потолок) - а в него передаются все координаты (в массив ac_coords)
-
К зоне может быть применён аксессуар (пол/потолок) - а в него передаются все координаты (в массив ac_coords)
А как его применить к зоне?
-
А как его применить к зоне?
Мда, вопросец.
Как и любой аксессуар. находите в меню (извините не знаю где в стандартном профиле находится), даже если нет, то идёте в окружающую среду/ меню и выводите в любое меню которое вам кажется подходящим команду. Именуется - создать аксессуары зоны. Теперь на плане выделяете любую зону, разыскиваете в меню вновь испеченную кнопку, жмакаете её, выскакивает на выбор три - потолка/ стен либо пола. Судя по названию эл-та от Brandashmыg, жмете пол. Далее как и любой библ, ну конечно сначала будут предложены папки где находятся эл-ты с таким подтипом. И ещё - чисто для сведений - любой элемент с подтипом аксессуар содержит инфу о координатах базового эл-та, будь то стена, перекрытие, кровля и тд.
-
Мда, вопросец.
Теперь найти эту кнопочку для меня дело принципа. Но нет ее в списке команд. Прикладываю скриншот списка команд в алфавитном порядке
-
Вы вообще скачивали Аксессуары с сайта GS?
Если скачивали, то в самом низу будет Все новые команды в алфавитном порядке. И эти все новые будут синим цветом. Аксессуары всегда новые и синие, ибо они не входят в комплект к Архикаду, а скачиваются отдельно, хоть они и бесплатные.
-
Так приведённый полигон lsr таким и является, можно сделать не только любое количество углов, но и любую форму. Он и периметр считает, имеет наклон в двух плоскостях и считает площадь геодезическую и реальную, даёт координаты всех углов от одной точки
По сути мне нужен редактируемый многоугольник с N количеством углов и специальной точкой начала координат от которой можно получить координаты угловых точек. Плюс к этому должна быть известна площадь многоугольника.
-
Согласен, разрабатывать с нуля такое не рационально. Так, для общего развития на будущее поковыряться.
-
А чем плох
стандартный метод с использованием вариаций объектов геокоордината? https://youtu.be/ZGzM2l0S8Lo
-
Неужели можно всерьёз полагать, что человек вчера открывший руководство по GDL, способен справиться с массивами. Даже при помощи Аксессуаров - из массивов ещё надо придумать как вытащить нужные значения. Начните изучение с простых команд типа POLY (вы как-то спрашивали на форуме что-то про фон штриховки - это простейшее по сравнению с DIM[]) или BLOCK a,b, zzyzx да PROJECT2 3,270,3 и сразу начнёт зудеть в голове >>> Ай да Пушкин. И под воздействием эйфории от собственного кода дальнейшее вникание в GDL пойдет легче.
Андрей, массивы= DIM[][] - это просто матрица с колонками и рядами - цифровая или строковая, иногда встречается смешанный тип, ничего особо подробного в литературе про массивы не сказано. Основная команда для чтения_построения FOR i TO, NEXT i. Чисто зрительно - очень непонятно в отличии от простейших команд типа BLOCK_BRICK. с PRISM хотя бы научитесь работать.
Список литературы ищите на форуме, если в ладах с английским погуглите David Nicholson-Cole или Andrew Watson. Не знаю есть ли там что подробно про массивы. Есть ещё одна проблема - массивы в ИК не читаются (ни динам. ни статические) и не выводятся эти параметры. Приходится делать дубликат значения массива в отдельном параметре.
-
Неужели можно всерьёз полагать, что человек вчера открывший руководство по GDL, способен справиться с массивами.
Благодарю за подробный ответ. GDL действительно знаю мало, но лет 15 назад весьма виртуозно владел языком qbasic. Потом забыл за ненадобностью. Буду разбираться по порядку.
-
А чем плох стандартный метод с использованием вариаций объектов геокоордината?
Сейчас так и делаю. Но когда размечаешь 200 участков зонами и на каждом надо еще по углам в ручную координаты "протыкать", это получается двойная работа, плюс можно легко пропустить случайно точку. А получить координаты из многоугольников (зон или объектов, надо решить) которыми размечаю участки было бы весьма рационально и безошибочно.