//-------------------------------------------------------------------------------------------------- public override void Update() { bool isValid = _Circle.Radius() > Double.Epsilon; if (!isValid) { Remove(); return; } if (_AisCircle == null) { if (!_EnsureAisObject()) { return; } } else { _AisCircle.SetCircle(_Circle); _AisCircle.SetFirstParam(_StartParam); _AisCircle.SetLastParam(_EndParam); AisContext.RecomputePrsOnly(_AisCircle, false); } }
//-------------------------------------------------------------------------------------------------- public override void Update() { bool isValid = true; if (_GeomLine == null) { isValid = _P1.Distance(_P2) > Double.Epsilon; } if (!isValid) { Remove(); return; } if (_AisLine == null) { if (!_EnsureAisObject()) { return; } } else { if (_GeomLine != null) { _AisLine.SetLine(_GeomLine); } else { _AisLine.SetPoints(_P1, _P2); } AisContext.RecomputePrsOnly(_AisLine, false); } }
//-------------------------------------------------------------------------------------------------- public void SetColor(Quantity_Color color) { if (!_EnsureAisObject()) { return; } _AisAxis.SetColor(color); AisContext.RecomputePrsOnly(_AisAxis, false); }
//-------------------------------------------------------------------------------------------------- public void SetLength(double length) { if (!_EnsureAisObject()) { return; } _AisAxis.SetLength(length); AisContext.RecomputePrsOnly(_AisAxis, false); }
//-------------------------------------------------------------------------------------------------- public override void Update() { if (_AisAxis == null) { _EnsureAisObject(); } else { AisContext.RecomputePrsOnly(_AisAxis, false); } }
//-------------------------------------------------------------------------------------------------- public void SetColor(Quantity_Color color) { _Color = color ?? Colors.BallMarker; if (!_EnsureAisObject()) { return; } _AisPoint.SetColor(_Color); AisContext.RecomputePrsOnly(_AisPoint, false); }
//-------------------------------------------------------------------------------------------------- void _Update() { if (_AisCircle == null) { if (!_EnsureAisObject()) return; } else { _AisCircle.SetCircle(_Circle); _AisCircle.SetFirstParam(_StartParam); _AisCircle.SetLastParam(_EndParam); AisContext.RecomputePrsOnly(_AisCircle, false); } }
//-------------------------------------------------------------------------------------------------- public void SetAxis(Ax1 axis) { if (!_EnsureAisObject()) { return; } if ((_Style & HintStyle.NoResize) > 0) { _AisAxis.SetComponent(new Geom_Line(Pnt.Origin, axis.Direction)); _AisAxis.SetTransformPersistence(new Graphic3d_TransformPers(Graphic3d_TransModeFlags.Graphic3d_TMF_ZoomPers, axis.Location)); } else { _AisAxis.SetComponent(new Geom_Line(axis)); } AisContext.RecomputePrsOnly(_AisAxis, false); }
//-------------------------------------------------------------------------------------------------- void _Update() { if (_AisLine == null) { if (!_EnsureAisObject()) { return; } } else { if (_GeomLine != null) { _AisLine.SetLine(_GeomLine); } else { _AisLine.SetPoints(_P1, _P2); } AisContext.RecomputePrsOnly(_AisLine, false); } }
//-------------------------------------------------------------------------------------------------- void _UpdatePresentation() { _UpdateMarker(); if (_AisShape == null) { return; } var layer = _ShapeSource?.GetLayer(); if (layer == null) { return; } AttributeSet attributeSet; if (!_DrawerCache.TryGetValue(layer, out attributeSet)) { attributeSet = new AttributeSet(); _UpdateAttributesForLayer(layer, ref attributeSet); _DrawerCache.SetValue(layer, attributeSet); } _AisShape.SetAttributes(attributeSet.Drawer); //_AisShape.SetHilightAttributes(attributeSet.HilightDrawer); _AisShape.SynchronizeAspects(); if (_Options.HasFlag(Options.Ghosting)) { _UpdatePresentationForGhost(); } //TODO maybe not needed due to call to SynchronizeAspects AisContext.RecomputePrsOnly(_AisShape, false, true); }