Перейти к содержанию
ISL

nanoCAD Plus 7.0. Список изменений в API

Рекомендуемые сообщения

Новый функционал nanoCAD Plus 7.0:

  • 3D моделирование, геометрическое ядро ACIS,
  • 2D зависимости, решатель LGS2D.

Внимание! 3D моделирование и 2D зависимости работают только при наличии лицезии. В демо режиме они отключены.

 

Изменения, влияющие на совместимость:

  • COM. Коллекции Documents и SelectionSets теперь нумеруются с 0
  • COM. Флаги метода InitializeUserInput приведены в соответствие с AutoCAD
  • MultiCAD.NET. Типы из пространства имён Multicad.Geometry, типы McObject и McObjectId теперь находятся в сборке mapibasetypes.dll, которую необходимо добавить в список References. Из-за дефекта в компиляторе C++/CLI, не позволяющего использовать атрибут [TypeForwardedTo], данное изменение требует пересборки приложений.

Исправления и дополнения в API nanoCAD Plus 7.0, запрошенные, в том числе, членами Клуба разработчиков:

 

COM

RU30 Флаги метода InitializeUserInput приведены в соответствие с AutoCAD

RU93 Первый Documents.Item имеет индекс 1, а в AutoCAD 0

RU95 Documents.Item(0) не принимает переменную типа Long из VB6

RU142 AddLightweightPolyline() не принимает массив VT_ARRAY|VT_BYREF (позднее связывание VBA)

NS3697 Привести флаги метода InitializeUserInput в соответствие с AutoCAD

NS5839 Свойство Application.FullName должно возвращать полный путь к NCad.exe

NS5849 Свойство Application.Path должно возвращать путь без имени файла

NS5995 Utility.AngleToReal неправильно производ конвертацию углов в градах и радианах

NS6465 Utility.GetAngle не позволяет задать базовую точку, всегда используется 0,0

NS6466 Utility.GetDistance не позволяет задать базовую точку, всегда используется 0,0

NS6467 Utility.GetOrientation не позволяет задать базовую точку, всегда используется 0,0

NS6469 Utility.GetEntity выводит рамку, если при клике не выбран объект

NS6475 Utility.GetAngle не воспринимает ввод угла с клавиатуры, используется значение в направлении курсора мыши

NS6482 Utility.GetOrientation не воспринимает ввод угла с клавиатуры, используется значение в направлении курсора мыши

NS6717 Свойство Application.WindowState=acNorm устанавливает неправильный размер окна

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

NS7067 Метод Utility.GetAngle не возвращает ключевое слово по первой прописной букве ключевого слова

NS7082 Utility.GetCorner. Неправильно отрабатывается случай запрещения пустого ввода

NS7153 Utility.GetDistance – не повторяет запрос при вводе не числа

NS7154 Utility.GetDistance – не возвращается ключевое слово

NS7313 Document.Close(True, pathFile) не работает при вызове из VB

NS7440 SelectionSets.Item не работает при вызове из VB

NS7496 Невозможно перебрать SelectionSet при помощи For Each... Next в VB

NS7840 Application.Version возвращает некорректное значение версии

NS8192 Метод Documents.Add(templatePath) не работает при вызове из VB

NS8258 SelectionSet: невозможно повторно перебрать элементы множества

NS8259 Document.ActiveSelectionSet не соответствует набору выбора "предыдущий"

NS8290 Неверные коды ошибок при вводе ключевых слов, Enter, Space в функциях Utility.GetXXX

NS8317 Невозможно изменить Document.MSpace из VB на позднем связывании

NS8375 Utility.GetAngle - Неправильно отрабатывается случай запрещения ввода 0

NS8891 SelectionSets.RemoveItems() не работает при вызове из VB

NS6265 Plot.SetLayoutsToPlot не работает при вызове из VB

NS6496 Document.SaveAs не влияет на текущий документ, только создаёт копию файла

NS6499 Utility.GetPoint – не рисуется резиновая линия от первой точки

 

.NET

Добавлены "пустышки" большинства нереализованных классов и методов

RU19 Database.SaveAs не влияет на текущий документ

RU147 Падение по выходу после использования событий LayoutManager

RU162 GripOverrule: Падение при обращении к GripDataCollection

RU174 Невозможно создать OpenCloseTransaction

EN129 NETLOAD не реагирует на FILEDIA

NS3996 Зависимые сборки грузятся только из последней директории

NS8110 Не освобождается память при многократном открытии одного и того же объекта

NS8253 Ускорить загрузку .NET модулей

NS9056 Обеспечить параллельное использование русских и английских ключевых слов в .NET модулях

NS10246 Обращение к TopTransaction приводит к обрушению программы

NS10247 Некорректно обрабатываются ключевые слова с пробелами

NS10284 Игнорируется ключевое слово по умолчанию (параметр Keywords.Default)

NS10309 Динамические блоки. Не удается программно установить значение динамического свойства типа "Отражение"

 

NRX

Добавлены "пустышки" большинства нереализованных классов и методов

RU73 Реализовать класс AcPane (NcPane)

EN216 Реализовать NcDbEntity::draw()

EN212 Реализовать NcHeapOperators

EN211 Реализовать NcGiVisualStyle

EN210 Реализовать классы-наследники NcDbSymbolTableIterator

EN209 Реализовать NcGsDCPoint

EN208 Падение при удалении NcDbObjectItertor, если какой-либо возвращённый объект уже был удалён

EN207 ncedGetFunCode() не возвращает номер вызывавшейся команды

EN206 Реализовать nds_queueexpr()

NS2835 NcDbDatabase::saveAs не влияет на текущий документ

NS5290 Обеспечить преобразование при компиляции IAcad* интерфейсов в InanoCAD* интерфейсы

NS5699 Реализовать NcDb3dSolid::createLoftedSolid()

NS5760 В NcEdJig::drag() иногда самопроизвольно рисуется "резинка" из начала координат

NS5761 Реализовать acrxLoadedApps() для проверки загруженности *.arx модуля

NS7410 Привести привести последовательность прихода реакторов Nc* в соответствие с ObjectARX

NS8299 Реализовать функцию InitAdUiDLL()

NS8300 Реализовать функцию AcDbAttribute::getMTextAttributeConst()

NS8301 Реализовать функции AcDbRasterImageDef::createImageDictionary() и AcDbRasterImageDef::imageDictionary()

NS8302 Реализовать функции CNdUiPaletteSet::SetName() и CNdUiPaletteSet::GetName()

NS8314 Реализовать функцию OPMPropertyExtensionFactory::desc()

NS8344 Добавить конструктор в класс NcGeNurbCurve3d

NS8345 В класс NcGeNurbCurve3d добавить функции, работающие с NcGePoint3dArray

NS9153 Реализовать HLR API на ACIS

NS9166 Реализовать NcGePoint2d NcGePoint3d::convert2d(NcGePlanarEnt const &)

NS9168 Реализовать NcGePoint3d NcGePoint3d::orthoProject(NcGePlane const &)

NS9169 Реализовать NcGeVector2d NcGeVector3d::convert2d(NcGePlanarEnt const &)

NS9170 Реализовать NcGeVector2d NcGeVector3d::convert2d(NcGePlanarEnt const &)

NS9171 Реализовать NcGePoint3d &NcGePoint3d::transformBy(NcGeMatrix3d const &)

NS9172 Реализовать NcGeVector3d & NcGeVector3d::transformBy(NcGeMatrix3d const &)

NS9173 Реализовать NcGeVector3d operator*(NcGeMatrix3d const &,NcGeVector3d const &)

NS9174 Реализовать NcGeVector3d operator*(double,NcGeVector3d const &)

NS9175 Реализовать newNcRxClass()

NS9176 Реализовать NcGeVector3d::isCodirectionalTo()

NS9177 Реализовать NcGeVector3d::isParallelTo()

NS9178 Реализовать NcGeVector3d::isPerpendicularTo()

NS9179 Реализовать NcGeVector3d::isZeroLength()

NS9180 Реализовать NcGeVector3d::operator NcGeMatrix3d(void)

NS9181 Реализовать ncrxSysRegistry()

NS9182 Реализовать ncutDelBuffer()

NS9202 Реализовать acplPlotConfigManagerPtr()

NS9203 Реализовать acdbGetViewportVisualStyle()

NS9205 NcDbSymbolTableRecord::getName(NCHAR *&) const' : cannot convert parameter 1 from 'NcString' to 'NCHAR *&'

NS9206 Реализовать acdbSetViewportVisualStyle()

NS9207 Определить BEGIN_PERPROPDISPLAY_MAP/END_PERPROPDISPLAY_MAP

NS9269 Реализовать NcAxGetDatabase

NS9270 Реализовать NcAxGetMaterial() / NcAxPutMaterial()

NS9275 Реализовать AcDb3dSolid::createRevolvedSolid()

NS9287 Реализовать NcGePointEnt3d::point3d()

NS9293 Реализовать класс NcStatusBarItem

NS9310 Реализовать NcDbAbstractViewTableRecord::setViewDirection()

NS9311 Реализовать NcDbBlockTableRecord::pathName()

NS9317 Реализовать NcDbHatch::getLoopAt()

NS9319 Реализовать NcDbLoftOptions::NcDbLoftOptions()

NS9320 Реализовать NcDbLongTransaction::newWorkSetIterator()

NS9323 Реализовать NcDbRasterImageDefReactor::setEnable()

NS9325 Реализовать NcDbSpline::toPolyline()

NS9326 Реализовать ncedCoordFromPixelToWorld()

NS9327 Реализовать ncedCoordFromWorldToPixel()

NS9328 Реализовать ncedGetApplicationStatusBar()

NS9331 Реализовать ncedHatchPalletteDialog()

NS9332 Реализовать ncedIsDragging()

NS9334 Реализовать NcEdJig::entity()

NS9336 Реализовать ncedSetCurrentView()

NS9337 Реализовать ncedVports2VportTableRecords()

NS9338 Реализовать ncedVportTableRecords2Vports()

NS9339 Реализовать ncedXrefAttach()

NS9340 Реализовать ncedXrefCreateBlockname()

NS9341 Реализовать ncedXrefReload()

NS9342 Реализовать ncedXrefUnload()

NS9344 Реализовать NcGeEntity2d::isKindOf()

NS9347 Реализовать NcGiMaterialMap::NcGiMaterialMap()

NS9348 Реализовать NcGiTextStyle::extentsBox()

NS9352 Реализовать ncgsGetViewportInfo()

NS9354 Реализовать NcPlDSDData::sheetType()

NS9364 Реализовать ncdbTblSearch()

NS9365 Реализовать ncedPostCommandPrompt()

NS9367 Реализовать ncrx_abort()

NS9374 Реализовать NcRxEventReactor::xrefSubcommandReloadItem()

NS9379 Реализовать AcApStatusBar::Add() / AcApStatusBar::Remove()

NS9441 Реализовать GET_OPMPROPERTY_MANAGER, GET_OPM_COMMAND_PROPERTY_MANAGER

NS9546 Обеспечить отрисовку транзиентов, добавленных через NcGsModel::onAdded()

NS9554 Обеспечить пересчёт координат при таскании за ручку через плоскость XY, проходящую через ручку

NS9603 Обеспечить работоспособность конструкции acedGetAcadWinApp()->GetIDispatch()

NS9613 Обеспечить возможность наследования от NcGiWorldDraw/NcGiViewportDraw

NS9622 Реализовать NcApDocManager::isApplicationContext()

NS9623 Реализовать NcApDocManager::executeInApplicationContext()

NS9633 Реализовать NcDbTransactionManager::addNewlyCreatedDBRObject

NS9635 Реализовать NcDbTransactionManager::addReactor() / removeReactor()

NS9648 Добиться возможности позвать close() у объекта, открытого через транзакцию

NS9708 curDoc() не работает в реакторе DocumentDestroyed()

NS9849 Обеспечить установку ownerId нерезидентным объектам

NS10175 При выборе трёхмерных примитивов не учитывается Z-буфер

NS10191 Необходимо возвращать осмысленный код ошибки в ncdbOpenNcDbObject()

NS10195 Блокировка документа на событие beginQuiescentState создаёт точку Undo

 

LISP

RU17 Команда SaveAs не реагирует на FILEDIA

RU51 Реализовать консольный интерфейс команды -PLOT

RU144 Реализовать консольный интерфейс команды -STYLE

RU152 Функция (arxload) не грузит NRX модули

EN192 Обеспечить работу с расширенными данными примитива в LISP (entmod, vla-setxdata)

NS3248 Добиться совместимости с LISP команды CIRCLE

NS9748 В русской версии не отрабатывает (command "_ZOOM" "_All").

NS9775 Добиться совместимости с командой ARC

NS9957 Команда ‘_LINE’ не воспринимает ключевые слова ‘_UNDO’, ‘_CLOSE’ и ‘_C’

 

MultiCAD.NET

Возможность работы с 3d телами, McEntityExtension, Mc3dSolid возможность создания своих объектов имеющих представление в виде параметрического 3d Solid

Core.Net. Возможность строить, вычислять и комбинировать 3D-тела из нескольких солидов в одном

InputJig.PropertyInpector - возможность выводить свойства объекта в Инспектор свойств во время работы Jig

API для работы с объектами архитектуры в СПДС

Новый метод McDocument.CreateDocument

Добавлены функции McObjectManager.HighlightAuto|UnhighlightAll, McObjectManager.CloneGroup|CloneGroupEx

Добавлен метод McContext.RegisterCommand для динамической регистрации команд

Доработан McTolerance

Паралельно методам работающим с TypeID объекта добавлены методы работающие с Type (IdKindOf(), AddType() и тому подобные )

Добавлено свойство McDocument.WorkingDocument позволяющиее устанавливать рабочий документ, для корректной работы с неактивными документами

Добавлено управление транзакциями

Исправлено GetDistance (работал как GetAngle)

Добавлены методы в McStyleManager.DefUnplottedLayerName, McStyleManager.DefInvisibleLayerName для получения слоев по умолчнию

Добавлены методы хелперы в поллинию SetToRect, CreateRectangle

Добавлен static McPropertySource McPropertySource.GetPropertySource(System.Object^ obj); - возможность получения PropertySource из любого объекта

Добавлен enum и методы ApplicationID, ConfigurationID, PlatformID

CustomBase, убрали повторную посылку события OnDeserialized, в момент, когда ещё не всё в объекте восстановлено после десериализации

Добавлен метод McEntity.MatchProperties

Базовые типы геометрии перемещены в сборку MapiBaseTypes

Класс McPainter позволяющий выводить произвольную графику/графиу объектов на DC в формах

Добавлен метод McCustomEntity.OnGetOsnapPoints для возможности пользовательсокго определеня OsnapPoints

Возможноть блокировать перемещение объекта из McCustomEntity путём бросания исключения в OnTransform

Объект McParametricObject - стандартная деталь, для доступа к параметрическим объектам СПДС/MechaniCS

IMcDynamicProperties более удобный интерфейс для определения динамического набора свойств у объектов, для показа в "Инспекторе свойств"

Добавлены методы/атрибуты для работы с единицами измерения чертежа

McOverlappedBase - Базовый класс для разработки перекрывающихся объектов

McCustomBase.OnGetParamAtPoint|OnGetPointAtParam - возможность переопределения методов получения точки и параметра привязки

Multicad.AplicationService.McParamManager - менеджер параметров

McComboBox - возможность показа цвета, типа линии, толщины линии как в нативных платформах

InputJig.GetTextInput, InputJig.GetText - методы для ввода текста пользователем

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...

×
×
  • Создать...