BRX
Słowa kluczowe acedSSGet() są teraz podświetlone i możliwe do wybrania.
Zaimplementowaliśmy dodatkowe nowoczesne sygnatury AcGiTextStyle::setFont() i AcGiTextStyle::font().
Zaimplementowano funkcję AcDbPointCloudEx::traverseAllPointData().
Funkcja AcLocale getProductLocale() została zaimplementowana.
Polecenia niestandardowe z flagą polecenia ACRX_CMD_NOHISTORY nie są już wyświetlane w wyskakującym okienku polecenia auto uzupełniania.
Paski dokowane i zestawy palet nie mogą teraz współdzielić wiersza dokowania z paskiem innym niż BRX. Ten nowy wymóg jest konieczny, ponieważ mieszane paski w tym samym wierszu nie mogą być niezawodnie zsynchronizowane pod względem rozmiaru, co powoduje dziwne efekty wizualne.
Rozszerzyliśmy funkcjonalność ładowania na żądanie poprzez obsługę klucza rejestru niezależnego od języka: SOFTWARE/Bricsys/BricsCAD/V24x64/Applications pod HKEY_CURRENT_USER i HKEY_LOCAL_MACHINE. Nowy klucz jest teraz sprawdzany oprócz (podobnego) klucza zależnego od języka.
Instancja AModeler::Body przetrwa teraz rundę save() i restore() bez zmiany kolejności jej powierzchni.
Naprawiliśmy błąd transakcji, który powodował nieoczekiwane zachowanie w niektórych przypadkach, gdy ten sam obiekt był wielokrotnie otwierany w transakcji zagnieżdżonej, a następnie ponownie dostępny w kolejnej transakcji zagnieżdżonej.
Modalne okno dialogowe wyświetlane podczas powiadomień o poleceniu LAYOUT_CONTROL działa teraz zgodnie z oczekiwaniami.
CAdUiListCtrl::DoAdUiMessage() nie wyświetla już ostrzeżenia, że funkcja nie została zaimplementowana.
Zakładki układu są teraz poprawnie aktualizowane po wywołaniu funkcji AcDbLayoutManager::copyLayout().
Zaimplementowano nową sygnaturę AcString funkcji acedGetCommandForDocument().
Dodaliśmy przykład ustawienia IfcPositiveLengthMeasure w BimSample.
Menu kontekstowe wyświetla teraz pełny ciąg słów kluczowych.
Zaimplementowaliśmy klasy AcDbBreakData i AcDbBreakPointRef.
Zaimplementowaliśmy funkcję AcGeNurbCurve3d::makeNonPeriodic().
Zaimplementowaliśmy funkcję AcDbText::getBoundingPoints().
Zaimplementowano funkcję AcDbTable::fieldId().
Zaimplementowaliśmy następujące funkcje członkowskie AcDbTable: breakOffset(), setBreakOffset(), breakFlowDirection(), setBreakFlowDirection(), breakOption() i setBreakOption().
Zaimplementowaliśmy funkcję AcDbObjectId::isWellBehaved() i zmodyfikowaliśmy funkcję AcDbObjectId::convertToRedirectedId(), aby zwracała bool zamiast void.
AcDBlockTableRecord::appendAcDbEntity() nie resetuje już skali typu linii elementu, jeśli została ona wcześniej ustawiona.
Kluczowe jednostki wysyłane do monitora punktu wejściowego są teraz najgłębiej zagnieżdżone, zamiast pojawiać się na najwyższym poziomie.
Konstruktor AcDbPolygonMesh generuje teraz elementy na podstawie PolyMeshType.
Funkcja AModeler::Body::interfere() została poprawiona dla przypadku, gdy dwa oddzielne ciała mają przecinające się wymiary, ale nie kolidują ze sobą.
Zaimplementowano funkcję AcDbTransactionManager::getAllObjects().
Dodaliśmy wartość wyliczeniową AcDbViewport::StandardScaleType::k1_5.
Menu kontekstowe i podpowiedzi nie wyświetlają już ukrytych słów kluczowych.
Wyszukiwanie słowa w zewnętrznym oknie pomocy nie powoduje już awarii programu BricsCAD, gdy panel wskazówek jest otwarty.
Zaimplementowaliśmy metodę CAdUiListCtrl::GetItemAtPoint().
Funkcje członkowskie niestandardowych klas wywodzących się z AcDbRasterImage działają teraz poprawnie.
Funkcje członkowskie niestandardowych klas wywodzących się z AcDbRasterImage działają teraz poprawnie.
Interfejs API C++ Civil został poddany drobnym zmianom w wersji V24. Nazwy klas i wyliczeń zostały zmienione w celu poprawy spójności nazewnictwa i teraz używają prefiksu BrxCv dla wszystkich nazw globalnych. Ponadto kilka globalnych wyliczeń zostało przeniesionych do odpowiednich klas, aby ograniczyć zanieczyszczenie globalnej przestrzeni nazw. Aliasy są dostępne dla starszego kodu, który nadal zawiera stare nagłówki.
AcGsKernelDescriptor::hasRequirement() zastępuje przestarzałą funkcję AcGsKernelDescriptor::requires().
Klasa AcPlPlotConfigInfo została zaimplementowana.
Zaimplementowano funkcję AcPlPlotConfig::fullPath().
Naprawiliśmy formatowanie pól, które było ignorowane z powodu źle sformatowanego kodu formatu.
Zaimplementowaliśmy brakującą sygnaturę funkcji AcDbDatabase::wblock().
Zaimplementowano różne brakujące funkcje członkowskie AcDbTable.
Argument CAdUiDockControlBar::SetToolID() został zmieniony na "const CLSID*", tak jak na innych platformach.
AcDbLayerTableIterator honoruje teraz ustawienie pomijania ukrytych warstw.
Usunęliśmy nieprawidłową wartość domyślną z deklaracji wywołania zwrotnego AcDbObject::erased().
Zmodyfikowaliśmy typ zwracany dla funkcji AcDbObject::addReactor(), AcDbObject::removeReactor() i AcDbObject::addPersistentReactor() z void na Acad::ErrorStatus.
Kilka elementów AcPlPlotConfig, w tym getDefaultFileExtension(), isPlotToFile() i fullPath() zwraca teraz oczekiwane wartości dla wbudowanych konfiguracji PC3.
Zaimplementowaliśmy kolejną sygnaturę metody AcDbRasterImageDef::suggestName(), która akceptuje czwarty parametr, odpowiadający rozmiarowi bufora wyjściowego.
Naprawiono nieprawidłową próbę wywołania funkcji adjustAlignment() podczas działania funkcji AcDbText::subClose(), gdy jednostka tekstowa nie była włączona do zapisu.
Pływające ramki zestawu palet z przezroczystością stają się teraz nieprzezroczyste, gdy kursor znajduje się nad ramką.
Polecenie ZAPISZW aktywuje teraz każdy dokument przed zapisaniem. Poprawia to kompatybilność z innymi platformami.
Nowo utworzone atrybuty i definicje atrybutów nie powodują już zgłoszenia TEST.
Zaimplementowaliśmy klasę AcEdSolidSubentitySelector.
- SR100604
- SR130732
- SR145768
Zaimplementowano klasę AcUnderlayLayer i powiązane funkcje członkowskie z klasy AcUnderlayReference.
Naprawiono błąd związany z metodą AcDbDatabase::save(), w wyniku którego nazwa pliku automatycznego zapisu była używana zamiast nazwy pliku rysunku.
Zaimplementowano metodę AcDbBlockTableRecordIterator::seek() dla argumentu AcDbEntity*.
Klasa AcGiPolyline została zmieniona, aby umożliwić bezpieczną obsługę podczas przekazywania instancji klienta do wewnętrznych operacji.
Naprawiono problem z funkcją BimPropertySets::setPSetProperty(), przypisującą wartości do elementów, gdy zestaw PropertySet już istnieje.
BRX/.NET
Nowe rozszerzenie Visual Studio jest teraz dostępne wraz z plikami BRX SDK. Rozszerzenie dodaje szablony projektów i elementów dla twórców wtyczek, aby szybko tworzyć gotowe do uruchomienia moduły wtyczek w Visual Studio.
Interfejs API Civil zapewnia teraz dostęp do identyfikatorów i nazw stylów Civil.
- SR145914
- SR162835
- SR164188
Próbki API zawierają teraz przykładowy kod oparty na API GIS.
Interfejs API Civil Powierzchnia TIN został rozszerzony o nowe interfejsy dla definicji Tin Powierzchnia, które definiują i udostępniają historię powierzchni.
Wprowadziliśmy nowe API BRX (C++) i .NET dla funkcji Civil GIS. Interfejs API BRX znajduje się w nagłówku BrxSpecific/civil/BrxCvGis.h, a interfejs API .NET składa się z kilku nowych klas z prefiksem GIS w przestrzeni nazw Bricscad.Civil.
Zdarzenia LayoutManager.LayoutsReordered (.NET) i AcDbLayoutManagerReactor::layoutsReordered() (C++) są teraz uruchamiane, gdy zakładki układu są zmieniane interaktywnie.
Interfejs API BIM poprawnie zgłasza teraz właściwości kształtu i rozmiaru profilu BIM.
Funkcjonalność zakotwiczania odniesień blokowych do brył 3D została udostępniona do użytku z poziomu kodu wtyczki.
Zaimplementowaliśmy API dla punktów i grup punktów Civil, w tym klasy Point i PointGroup w przestrzeni nazw Bricscad.Civil dla .NET.
- SR125560
- SR130893
- SR134422
- SR143605
- SR143759
- SR161783
.NET
DatabaseServices.Cannoscale można teraz ustawić, gdy układ jest aktywowany.
Zaimplementowaliśmy metody UnderlayHost::PdfHost::GetFile(), UnderlayHost::DgnHost::GetFile() i UnderlayHost::DwfHost::GetFile().
Funkcja GeoCoordinateCategory.CreateAll() została zaimplementowana.
Poprawiliśmy działanie metody AssocArray.CreateArray().
Obsługa zdarzenia Editor.PromptedForAngle jest teraz wywoływana po funkcji GetAngle(), zgodnie z oczekiwaniami.
Zaimplementowaliśmy właściwość LayerViewportProperties.IsTransparencyOverridden.
Funkcja GripData.OnRightClick() jest teraz wywoływana po kliknięciu niestandardowego uchwytu prawym przyciskiem myszy.
Sygnatura GripData.OnRightClick() została zmieniona, aby zwracać kolekcję pozycji menu.
Zaimplementowaliśmy klasy GraphicsSystem.KernelDescriptor i GraphicsSystem.GraphicsKernel.
Zaimplementowaliśmy API usuwania ukrytych linii w nowej przestrzeni nazw Bricscad::Hlr.
- SR89046
- SR99064
- SR125974
- SR131611
- SR132513
- SR154725
Niestandardowe elementy menu kontekstowego z pustą właściwością IMenuItem.Text są teraz dodawane jako separatory menu.
Interfejs API Bricscad.MechanicalComponents został rozszerzony o obsługę niektórych brakujących funkcji.
Niektóre dziwnie nazwane metody w BIM API zostały wycofane i przekierowane do nowych wersji o bardziej konwencjonalnych nazwach. Starszy kod powinien nadal kompilować się i działać poprawnie, ale może generować ostrzeżenia kompilatora o przestarzałych metodach.
Konstruktor CurveCurveIntersector2d przyjmujący tablicę krzywych działa teraz poprawnie, a metoda CurveCurveIntersector2d.SetCurve() nie ulega już awarii.
Wywołanie funkcji TransactionManager.GetObject() w celu otwarcia obiektu z bazy danych załączników wykorzystuje teraz prawidłową instancję menedżera transakcji do otwarcia obiektu.
- SR159071
- SR160971
- SR161277
Okno dialogowe Colorbook teraz poprawnie ustawia dla ColorDialog.Color właściwości: HasBookName, BookName, HasColorName, ColorName.
Naprawiono: _AcDb.Entity.Highlight() nie działa, jeśli element jest podświetlony jako podgląd wyboru.