The nurb field in DwgSpline
now refers to cm.geometry.brep.BrepBSplineCurve
instead of ANurbsCurve
.
The export methods in Snapper
has changed arguments.
The dwg import dialog has been overhauled, in that process changes has been made to both functionality of the dialog and it's interface.
Settings have generally changed from using last applied from/to coresettings to storing the DwgSettingsEnv
in each DwgSnapper
and using those settings on all modifications from the import dialog.
Presets have been introduced and you can register presets via this function:
/* * Register predefined dwg setting. */ public void regPredefinedDwgSetting(DwgSettingsEnv env, bool replace=false) {
The ExportPaperDwgDialog
class has been removed entirely since papers now can be exported from the ExportDwgDialog
. When exporting to dwg the user now has the possibility to export 2D-view, 3D-view and/or Papers from paper view (current or all).
Due to these changes, some methods have been removed and some have been changed.
These two methods in Snapper
now have one single argument. This is to facilitate the need for more arguments now and in the future. The export()
method is the method to override in case you want non-default dwg-export behaviour.
/** * Export snapper. */ extend public ExportData export(SnapperExportEnv env) { return stdSnapperExport(env); } /** * Export graphical snapper. */ extend public ExportData systemExport(SnapperExportEnv env) { if (hasGraphicalSpecial) return stdSnapperExport(env); else return export(env); }
All the old arguments are contained within the SnapperExportEnv
. New is the LayerSet
which is used when using ViewMode filtered dwg export. If possible filter your snapper graphics using this filter to avoid returning unnecessary data. The SnapperExportEnv
extends CorePropObj
to facilitate the need for more arguments in the future.
/** * Snapper export env. */ public class SnapperExportEnv extends CorePropObj { /** * Export 2D graphics. */ public bool twoDim; /** * Export 3D graphics. */ public bool threeDim; /** * Export item tags. */ public bool itemTags; /** * The wanted detail of the exported graphics. */ public detailLevel detail; /** * The wanted layer of the export. */ public LayerSet layer : copy=reference; /** * Create a new Snapper export env. */ public constructor(bool twoDim=true, bool threeDim=true, bool itemTags=true, detailLevel detail=detailLevel.super, LayerSet layer=normalLayerSet) { this.twoDim = twoDim; this.threeDim = threeDim; this.itemTags = itemTags; this.detail = detail; this.layer = layer; } }
The following public functions have been removed entirely
public void userDwgPaperExport(Window app, Space space, bool initVisible=true, bool applyAndClose=false) public void userPaperDwgExportToTarget(Window app, Space space, bool initVisible=true, bool applyAndClose=false, Url url=null)
Both could be replaced by the functions
public void userDwgExport(Window app, Space space, bool initVisible=true, bool applyAndClose=false) public void userDwgExportToTarget(Window app, Space space, bool initVisible=true, bool applyAndClose=false, Url url=null)
The constructor()
has changed
public constructor(Space mainSpace, PaperSpace[] paperSpaces=null, bool export2D=true, bool export3D=true, ExportFilterBar exportFilter=null)
Previously it only took a Space
as an argument and now a Space
and a seq of PaperSpace(s)
. Any of them can be null
. If you only want to export papers then only pass in PaperSpace
objects. 2D and 3D only applies to 'Space'.
Also due to this change, the following methods in DwgExporter
now takes a Space
as an argument.
extend public void collectSnappers(Space s, SnapperFilter filter=null) extend public rect getViewBound(Space s)
/** * Set env settings. */ extend public void setEnvSettings() {
Has been replaced with:
/** * Apply settings from env. */ extend public void applySettings(DwgSettingsEnv env) {