private void updateSupportTransforms() { _supp_condition.Transforms.Clear(); var dz = DirectionLocalZ.IsTiny() ? Vector3d.ZAxis : DirectionLocalZ; _supp_condition.Transforms.AddRange(DrawUtil.GetCurveTransforms(Value, _supp_condition.LocalFrame, dz, null, DrawUtil.ScaleFactorSupports, DrawUtil.DensityFactorSupports)); }
private void updateLocalFrameTransformsOld() { _localFrame.Transforms.Clear(); foreach (BrepFace bf in Value.Faces) { foreach (int beIndex in bf.AdjacentEdges()) { _localFrame.Transforms.AddRange(DrawUtil.GetCurveTransforms(Value.Edges[beIndex], true, DirectionLocalX, bf, DrawUtil.ScaleFactorLocalFrame, DrawUtil.DensityFactorLocalFrame)); } } }
private void updateLoadTransforms() { _loadCondition = new LoadCondition(Forces, Moments); Vector3d lz = Vector3d.Negate(Vector3d.ZAxis); //default local z if (!(ReferenceLine is null)) { if (!ReferenceLine.DirectionLocalZ.IsTiny()) { lz = ReferenceLine.DirectionLocalZ; } } _loadCondition.Transforms.AddRange(DrawUtil.GetCurveTransforms(Value, UseHostLocal, lz, null, DrawUtil.ScaleFactorLoads, DrawUtil.DensityFactorLoads)); }
private void updateLoadTransforms() { _loadCondition = new LoadCondition(Forces, Moments); Vector3d lx = Vector3d.Zero; if (!(ReferenceArea is null)) { lx = ReferenceArea.DirectionLocalX; } // iterate over BrepFaces foreach (BrepFace bf in Value.Faces) { // iterate over Edges of current face and draw this edge foreach (int beIndex in bf.AdjacentEdges()) { _loadCondition.Transforms.AddRange(DrawUtil.GetCurveTransforms(Value.Edges[beIndex], UseHostLocal, lx, bf, DrawUtil.ScaleFactorLoads, DrawUtil.DensityFactorLoads)); } } }
private void updateLocalFrameTransforms() { _localFrame.Transforms.Clear(); var dz = DirectionLocalZ.IsTiny() ? -1 * Vector3d.ZAxis : DirectionLocalZ; if (DrawUtil.DensityFactorLocalFrame < 0.001) { double p = Value.Domain.ParameterAt(0.5); Point3d pMid = Value.PointAt(p); Vector3d tMid = Value.TangentAt(p); Transform tScale = Rhino.Geometry.Transform.Scale(Point3d.Origin, DrawUtil.ScaleFactorLocalFrame); Transform tOri = TransformUtils.GetGlobalTransformLine(tMid, dz); Transform tTrans = Rhino.Geometry.Transform.Translation(new Vector3d(pMid)); _localFrame.Transforms.Add(tTrans * tOri * tScale); } else { _localFrame.Transforms.AddRange(DrawUtil.GetCurveTransforms(Value, true, dz, null, DrawUtil.ScaleFactorLocalFrame, DrawUtil.DensityFactorLocalFrame)); } }