Release Notes
WIP-5
- The Allplan Extension Package (Allep) allows to pack multiple PythonParts into one plugin and ship it to the end-user more easily.
- Newly exposed PolyhedronUtil offers new useful methods for processing a polyhedron geometry, for example repairing an invalid geometry.
- New API functionality for creating joints. See documentation of the JointElement.
- It is now possible to modify the display name of a PythonPart. Learn more here.
-
New service in the NemAll_Python_BaseElements, the ZoomService, allows you to zoom to a specific element(s) inside the viewport(s). The example can be found under:
- ...\etc\Examples\PythonParts\ServiceExamples\ZoomService
-
The new progress bar is accessible via the class ProgressBar in the NemAll_Python_Utility module.
Warning
Methods referring to the old progress bar has been deprecated. Refer to the API reference, to see what methods to use to access the new progress bar.
-
The creation of PythonPart groups has been simplified and documented. Learn more in this article
-
The handling of slab openings with API has been improved:
- The read access is granted
- Placing opening symbols inside the opening is possible
The examples are available under:
- ...\etc\Examples\PythonParts\ArchitectureExamples\Objects\SlabOpening
- ...\etc\Examples\PythonParts\ArchitectureExamples\ModifyObjects\ModifySlabOpening
-
The polyhedron geometry validation when calling the DrawElementPreview is now disabled by default, which increases the performance during preview draw of complex geometries. In case of unexpected results, this validation can be turned back on by calling
SetValidateGeometry
-
Articles about the key components of the PythonParts framework: the palette and the script has been completely refactored.
-
New type of contract is available in the PythonParts framework: beside a standard PythonPart and an interactor you can now create a script object PythonPart
WIP-4
- New API functionality for creating polygonal niche or recess. See documentation of the GeneralOpeningElement
- New extensive articles about accessing and modifying elements inside Allplan model.
- It is now possible to provide a library dialog for selecting a smart symbol or a SmartPart. Learn more here.
- It is now possible to specify maximum and minimum values for point and vector parameters. Learn more here.
- It is now possible to show some controls from a row on the left side of the palette. Learn more here.
- It is now easier to provide an info box with a more extensive description for a parameter in the palette. Learn more here.
- The UX when using list parameters can now be improved by using a new parameter type, the MultiIndex. Learn more here.
- New parameter type DynamicList enables the user to append and delete items from the list. Learn more here
- The alignment of the text parameter can now be controlled with the new tag
<Orientation>
. Learn more here - It is now possible to place pictures in the palette with picture parameter not only a path to a .png file, but also Allplan internal resource ID or an option of a dedicated enumeration classes. Learn more here
- A picture from Allplan's image resources can now be shown on a button by accessing an option of a dedicated enumeration class. Learn more here
- There are some new options of a reference point button. Learn more here
WIP-3
-
New class DoorOpeningElement in the NemAll_Python_ArchElements module allows you to create door openings. The example is available under:
- ...\etc\Examples\PythonParts\ArchitectureExamples\Objects\DoorOpening
-
The article about element selection has been completely rewritten.
- New extensive article about coordinate input.
- It is now possible (and even recommended) to delete model elements with the
PythonPartTransaction. See new argument
elements_to_delete
in the execute method. - New tags
<ValueTextList>
and<ValueTextIdList>
, relevant for the definition of a picture combo box and for a picture button list - You can now control the visibility/enable state of multiple directly consecutive parameters with a condition group
- You can now create a list of tuples in the palette, that stretch over the entire width of the palette. This allows you to create controls layout similar to a table. Learn more here
Warning
Module level attributes representing values of enumeration classes have been deprecated in 2025-WIP-3. Instead of using:
Use the full name:
WIP-2
-
New extensive article: geometry operations including tips and how-to´s for e.g.:
- Quantity take-offs
- Boolean operations
- Brep tessellation
- and more...
Examples for the above mentioned article are available under:
- ...\etc\Examples\PythonParts\GeometryExamples\Operations
-
New extensive articles about reinforcement covering topics, such as:
Examples for the above mentioned article are available under:
- ...\etc\Examples\PythonParts\ReinforcementExamples\BarShapes
- ...\etc\Examples\PythonParts\ReinforcementExamples\BarPlacement
- ...\etc\Examples\PythonParts\ReinforcementExamples\Labels
-
New article about creating a PythonPart
-
New classes in the NemAll_Python_ArchElements module:
- GeneralOpeningElement: allows creation of a niche or recess
- WindowOpeningElement: allows creation of a window opening
Implementation examples are located in:
- ...\etc\Examples\PythonParts\ArchitectureExamples\Objects\
- ...\etc\PythonPartsExampleScripts\ArchitectureExamples\Objects\
-
With the new tag
<EnumList>
it is now possible to point out to an option of any enumeration class e.g., in a PictureButtonList or a PictureResourceComboBox -
It is now possible to refer to a picture resource through dedicated enumeration classes. They are available in the NemAll_Python_AllplanSettings module and their names begins with
PictRes
. E.g., PictResRevealType. The can also be used in a PictureButtonList or a PictureResourceComboBox
WIP-1
-
New classes in the NemAll_Python_Precast module:
- PrecastMWSElement: allows creation of MWS reinforcement group
- AssemblyGroupElement: allows creation of reinforcement assembly
-
New functionalities of the parameter PlaneReferences:
- new possibilities to set constraints
- new edit controls with possibility to hide them individually
-
Including parameters from external .pyp files can now be done with the new value type: Include
- Tag
<Constraint>
can now be defined in the CheckBox parameter - New value types to control font style and font emphasis
- New value type date
- It is now possible to access the TextElement and LabelElement from the BaseElementAdapter of type TextBlock_TypeUUID or GeneralVariableText_TypeUUID respectively, by using the GetElements function and modify them by using the ModifyElements function.
- New class in the API InputAngleSettings to control the system angle (rotation of the crosshair).
- New tag
<ShowFavoriteButtons>
in the script node of the PYP file allows you to hide the favorite icons. -
New method set element attributes of the ModelEleList makes it easier to append attributes to ModelEleList. Refer to this article
to learn more.