ADN Club > JavaScript и web-программирование для ПО Autodesk

Получение списка координат полилинии на JavaScript

(1/3) > >>

pvetal:
Добрый день.
Подскажите пожалуйста, как получить список координат полилинии (функция entget в LISP) c помощью JavaScript API ?
По аналогии с примерами с сайта http://through-the-interface.typepad.com/ я получаю с помощью функции Acad.Editor.getEntity объект ( resultObj ).
Затем я перебираю в цикле свойства объекта и вывожу их в текстовое поле:

--- Код - Javascript [Выбрать] ---for (var key in resultObj) {        TextIds.value = TextIds.value + "Key: " + key + " value: " + resultObj[key] +'\n';}
получаю такой список :

* Key: retCode value: 0
* Key: status value: 5100
* Key: stringResult value:
* Key: contextID value: 7
* Key: objectId value: ffd03638
* Key: pickedPoint value: [object Object]
* Key: callbackName value: Ac_Editor_getEntity_completeОбъект pickedPoint содержит координаты одной точки, которая не является ни одной из вершин полилинии.

Подскажите пожалуйста решение или имя функции в API.
Спасибо.

Александр Ривилис:
pvetal
Приветствую на форуме! Начни с того, что отформатируй код по правилам форума (смотри у меня в подписи).

Александр Ривилис:
Насколько я знаю средствами одного JavaScript получить вершины полилинии нельзя. Его возможности очень ограничены. Можно получить границы примитива:

--- Код - Javascript [Выбрать] ---var entity = new Acad.DBEntity(resultObj.objectId);var ext = entity.getExtents();Теоретически можно расширить возможности JavaScript при помощи .NET: http://through-the-interface.typepad.com/through_the_interface/2013/05/complementing-autocads-javascript-api-using-net.html

P.S.: А с чем связан выбор JavaScript API для этой задачи? Почему не lisp/.NET/ARX ?

pvetal:

--- Цитата: Александр Ривилис от 04-02-2016, 13:29:15 ---Теоретически можно расширить возможности JavaScript при помощи .NET
--- Конец цитаты ---

Дело в том, что я выбрал именно JavaScript, потому что знаком с ним по своему хобби - веб-программирование, а .NET я вообще не знаю и изучать его ради написания одного дополнения (плагина) - нет желания.
Я работаю в AutoCAD и по построенным в этой среде чертежам изделий, пишу G-код для токарного станка с ЧПУ. И вот решил автоматизировать этот процесс.
Может получится расширить возможность JavaScript при помощи LISP (его я немного знаю) - буду искать информацию.
Спасибо.

Александр Ривилис:

--- Цитата: pvetal от 04-02-2016, 13:51:29 ---Может получится расширить возможность JavaScript при помощи LISP
--- Конец цитаты ---
Увы  нет.
P.S.: Я думаю, что проще будет написать на C# (синтаксис которого похож на JS), чем пытаться писать на JS - для AutoCAD он по прежнему остаётся неполноценным API.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

Перейти к полной версии