public void AddLineToList(ObservableCollection<CLineVM> list, DblPoint3 DstPoint)
 {
     if (list.Count > 0)
     PlannedLines.Add(new CLineVM(list.Last().P2, DstPoint, mWorldToCuttingPlaneTransform));
       else
     PlannedLines.Add(new CLineVM(new DblPoint3(0, 0, 0), DstPoint, mWorldToCuttingPlaneTransform));
 }
 public void ApplyTransform(ScaleTranslateTransform transform)
 {
     mP1Transformed = transform.Apply(mP1);
       mP2Transformed = transform.Apply(mP2);
       Notify("");
 }
 public CLineVM(DblPoint3 P1, DblPoint3 P2, ScaleTranslateTransform transform)
 {
     mP1 = P1;
       mP2 = P2;
       ApplyTransform(transform);
 }
 public DblPoint3 Apply(DblPoint3 input)
 {
     return new DblPoint3(input.x * mScale.x + mTranslate.x,
                    input.y * mScale.y + mTranslate.y,
                    input.z * mScale.z + mTranslate.z);
 }
 public ScaleTranslateTransform(DblPoint3 scale, DblPoint3 translate)
 {
     mScale = scale;
       mTranslate = translate;
 }
 private void RaisePlannerBlocksChanged(EPlannerBlockChangedState state, DblPoint3 target)
 {
     if (PlannerBlocksChanged != null)
     PlannerBlocksChanged(this, new CPlannerBlocksChangedEventArgs() { PlannerBlocksChangedState = state, Target = target });
 }