コード例 #1
0
        /*public override void GetGripPoints(Entity entity, Point3dCollection gripPoints, IntegerCollection snapModes, IntegerCollection geometryIds)
         * {
         *  gripPoints.Add(_getCustomGrip(entity));
         *  base.GetGripPoints(entity, gripPoints, snapModes, geometryIds);
         * }*/

        public override void GetGripPoints(Entity entity, GripDataCollection grips, double curViewUnitSize, int gripSize, Vector3d curViewDir, GetGripPointsFlags bitFlags)
        {
            ArrowGripData gdata = new ArrowGripData();

            gdata.GripPoint = _getCustomGrip(entity);
            grips.Add(gdata);
            base.GetGripPoints(entity, grips, curViewUnitSize, gripSize, curViewDir, bitFlags);
        }
コード例 #2
0
        /*public override void GetGripPoints(Entity entity, Point3dCollection gripPoints, IntegerCollection snapModes, IntegerCollection geometryIds)
         * {
         *  gripPoints.Add(_getCustomGrip(entity));
         *  base.GetGripPoints(entity, gripPoints, snapModes, geometryIds);
         * }*/

        public override void GetGripPoints(Entity entity, GripDataCollection grips, double curViewUnitSize, int gripSize, Vector3d curViewDir, GetGripPointsFlags bitFlags)
        {
            ArrowGripData gdata = new ArrowGripData();

            gdata.GripPoint = _getCustomGrip(entity);
            grips.Add(gdata);
            base.GetGripPoints(entity, grips, curViewUnitSize, gripSize, curViewDir, bitFlags);
#if DEBUG
            IgorKL.ACAD3.Model.Drawing.AnchorArrow.Arrow.SafeObject so =
                (IgorKL.ACAD3.Model.Drawing.AnchorArrow.Arrow.SafeObject)Model.Drawing.AnchorArrow.Arrow.SafeObject.NewFromEntity(entity, Model.Drawing.AnchorArrow.Arrow.SafeObject.AppName);

            _entities = so.Object.Explode().Select(x => x.GetTransformedCopy(Tools.GetAcadEditor().CurrentUserCoordinateSystem));
            //IgorKL.ACAD3.Model.Tools.AppendEntity(so.Object.Explode());
#endif
        }
コード例 #3
0
        private Point3d _getCustomGrip(Entity entity)
        {
            Xrecord xrecord = null;
            Point3d p       = Point3d.Origin;

            Tools.StartTransaction(() =>
            {
                DBDictionary dic = (DBDictionary)entity.ExtensionDictionary.GetObject(OpenMode.ForRead, false, true);
                xrecord          = (Xrecord)dic.GetAt("ARROW_JigPosition").GetObject(OpenMode.ForRead);

                p = new Point3d(xrecord.Select(tv => (double)tv.Value).ToArray());
                ArrowGripData gdata = new ArrowGripData();
            });

            return(p);
        }