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));
        }
Beispiel #2
0
        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));
                }
            }
        }
Beispiel #3
0
        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));
        }
Beispiel #4
0
        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));
            }
        }