Removed field str volumeId and replaced with a private field private symbol volumeId. Replaced methods str volId=(str id) with symbol volId=(symbol id) and str volId() with symbol volId(). Also renamed method AbsMezzDecking holeCandidate(AnimationMouseInfo mi) to `AbsMezzDecking getHoleCandidate(AnimationMouseInfo mi).
public class AbsMezzLevelRectInsertAnimation extends DrawShapeRectAnimation { Old: public str volumeId; New: private symbol volumeId; Old: extend public str volId=(str id) { New: extend public symbol volId=(symbol id) { Old: extend public str volId() { New: extend public symbol volId() { Old: extend public AbsMezzDecking holeCandidate(AnimationMouseInfo mi) { New: extend public AbsMezzDecking getHoleCandidate(AnimationMouseInfo mi) { }
Removed function void mezzInsertRails(APolyline2D poly, AbsMezzDecking{} deckings, Space space). Call function void mezzInsertRailGroup(APolyline2D poly, APolyline2D[] holes, AbsMezzDecking{} deckings, Space space) instead.
Updated function signature:
Old: public (AShape2D->AbsMezzDecking{}) mezzCombinedShapes(AbsMezzDecking{} deckings, bool ignoreTh=false) { New: public (AShape2D->AbsMezzDecking{}) mezzCombinedShapes(AbsMezzDecking{} deckings, bool ignoreTh=false, bool forStructure=false) {
The method Graph get2D() has been removed and replaced with post2D(AbsMezzGraphNode node). It was previously used to create a circle graph to represent a post, but we no longer draw the posts in abstract by default.
public class AbsMezzRail extends Model3DSnapper { Old: extend public Graph get2D() { New: extend public Graph post2D(AbsMezzGraphNode node) { }
The method Primitive3D rail3D(point2D from, point2D to) has been removed and replaced with Primitive3D rail3D(AbsMezzGraphNode n0, AbsMezzGraphNode n1). The method Primitive3D post3D() has been removed and replaced with post3D(AbsMezzGraphNode node)`.
public class AbsMezzRail extends Model3DSnapper { Old: extend public Primitive3D rail3D(point2D from, point2D to) { New: extend public Primitive3D rail3D(AbsMezzGraphNode n0, AbsMezzGraphNode n1) { Old: extend public Primitive3D post3D() { New: extend public Primitive3D post3D(AbsMezzGraphNode node) { }
The following has been removed:
Removed: public const bool dbg_absMezzRailGfx; public class AbsMezzGraphNodeRail3DVisitor extends AbsMezzGraphNodeVisitor { Removed: public AbsMezzGraphNode->(AbsMezzGraphNode-><double, point2D, point2D>[]) processed(); } public class AbsMezzGraphNodeRail2DVisitor extends AbsMezzGraphNodeVisitor { Removed: public AbsMezzGraphNode->(AbsMezzGraphNode-><double, point2D, point2D>[]) processed(); } public class AbsMezzGraphNodeVisitor extends Visitor { Removed: extend public Primitive3D dbgArrow3D(AbsMezzGraphNode from, AbsMezzGraphNode to, double height) { Removed: extend public Graph dbgArrow2D(AbsMezzGraphNode from, AbsMezzGraphNode to) { }
AbsMezzEdge has been made unstreamable as these are meant to be temporary objects representing two AbsMezzGraphNode objects.
Removed field SnapperRef{} rackingRefs in AbsMezzDecking. Use methods SnapperRef{} refs() and SnapperRef{} refs=(SnapperRef{} r) instead.
public class AbsMezzDecking extends DrawShapeSnapper { Removed: public SnapperRef{} rackingRefs; }
The structures snapper has been reworked. Instead of each structures snapper representing a group of lines, we now have a structure snapper for every line.
Removed the following classes:
Removed: public class AbsMezzPurlins extends AbsMezzStructures { Removed: public class AbsMezzColumns extends AbsMezzStructures { Removed: public class AbsMezzBeams extends AbsMezzStructures {
Renamed class AbsMezzStructures to AbsMezzStructure. Field line[] lines is now line ln.
Old: public class AbsMezzStructures extends ModelSnapper { public line[] lines; public constructor(line[] lines) { } } New: public class AbsMezzStructure extends ModelSnapper { public line ln; public constructor(line ln) { } }
Removed and replaced the below methods in AbsMezzDecking.
public class AbsMezzDecking extends DrawShapeSnapper { Old: extend public AbsMezzBeams createBeams() { New: extend public AbsMezzStructure createBeam() { Old: extend public AbsMezzPurlins createPurlins() { New: extend public AbsMezzStructure createSecondary() { Old: extend public AbsMezzColumns createColumns() { New: extend public AbsMezzStructure createColumn() { }
Renamed the following fields:
public class AbsMezzStructureLinesEnv extends PropObj { Old: public line[] purlinLines; New: public line[] secondaryLines; Old: public double purlinMaxDist = 200mm; New: public double secondaryMaxDist = 200mm; Old: public size2D purlinSize = (64mm, 120mm); New: public size2D secondarySize = (64mm, 120mm); }
Updated method signature
public class AbsMezzStructureLinesGenerator { Old: extend public void processGeneratedLinesToBeam(line[] beamLines, line[] purlinLines, line[] columnLines, size2D beamSize, double deckingThickness=0) { New: extend public void processGeneratedLinesToBeam(line[] beamLines, line[] secondaryLines, line[] columnLines, size2D beamSize, double deckingThickness=0) { }