コード例 #1
0
 bool curveInputPath(ConstructAction.CurveInput sender, ICurve[] Curves, bool up)
 {       // ... nur die sinnvollen Kurven verwenden
     objectPoint = base.CurrentMousePosition;
     if (up)
     {
         if (Curves.Length == 0)
         {
             sender.SetCurves(Curves, null);                     // ...die werden jetzt im ControlCenter dargestellt (nur bei up)
         }
         else
         {
             sender.SetCurves(Curves, Curves[0]);
         }
     }
     if (Curves.Length > 0)
     {   // er hat was gewählt
         selectedObjectsList.Clear();
         base.FeedBack.ClearSelected();
         selectedObjectsList.Add(Curves[0] as IGeoObject); // das eine in die Liste
         ListDefault(1);                                   // die Listen löschen und mit "1" vorbesetzen
         if (extrudeOrg())
         {
             return(true);
         }
     }
     heightInput.ReadOnly = false;
     base.FeedBack.ClearSelected();
     base.ShowActiveObject = false;
     return(false);
 }
コード例 #2
0
 void curveInputPathChanged(ConstructAction.CurveInput sender, ICurve SelectedCurve)
 {
     selectedObjectsList.Clear();
     base.FeedBack.ClearSelected();
     selectedObjectsList.Add(SelectedCurve as IGeoObject); // das eine in die Liste
     ListDefault(1);                                       // die Listen löschen und mit "1" vorbesetzen
     rotateOrg();
 }
コード例 #3
0
 bool OnMouseOverCurves(ConstructAction.CurveInput sender, ICurve[] TheCurves, bool up)
 {   // kommt z.Z. nicht vor, da die Aktion nur aus dem Kontextmenue gestrtet wird
     if (up && TheCurves.Length > 0)
     {
         theCurve = TheCurves[0];
         Recalc();
     }
     return(TheCurves.Length > 0);
 }
コード例 #4
0
        bool pipeInputCurves(ConstructAction.CurveInput sender, ICurve[] Curves, bool up)
        {   // ... nur die sinnvollen Kurven verwenden
            //            objectPoint = base.CurrentMousePosition;
            if (up)
            {
                if (Curves.Length == 0)
                {
                    sender.SetCurves(Curves, null);                     // ...die werden jetzt im ControlCenter dargestellt (nur bei up)
                }
                else
                {
                    sender.SetCurves(Curves, Curves[0]);
                }
            }
            if (Curves.Length > 0)
            {   // er hat was gewählt
                iCurvePipe = Curves[0];

                //Path p = null;
                //p = CADability.GeoObject.Path.CreateFromModel(iCurvePipe, base.Frame.ActiveView.ProjectedModel, true);
                //if (p == null)
                //{ // also nur Einzelelement
                //    if (iCurvePipe is Path)
                //    { // schon fertig
                //        p = iCurvePipe.Clone() as Path;
                //    }
                //    else
                //    {  // Pfad aus Einzelobjekt machen:
                //        p = Path.Construct();
                //        p.Set(new ICurve[] { iCurvePipe.Clone() });
                //    }
                //}
                //else
                //{ // CreateFromModel hat was zusammengesetzt
                //    p.Flatten();
                //}
                //if (p != null)
                //{
                //    extrudeMode = 3; // merken, ob Extrudier-Vektor, Höhe oder Pfad
                //    optionalOrg();
                //    pipePath = p;
                //    if (curveInput.Fixed)
                //    { if (extrudeOrg()) return true; }
                //    return true;
                //}
                if (pipeTest())
                {
                    return(true);
                }
            }
            //            base.ActiveObject = null;
            pipePath = null;
            base.ShowActiveObject = false;
            return(false);
        }
コード例 #5
0
 void pipeInputCurveChanged(ConstructAction.CurveInput sender, ICurve SelectedCurve)
 {
     iCurvePipe = SelectedCurve;
     pipeTest();
 }