Ejemplo n.º 1
0
        public Snapper(
            SessionData sessionData,
            UiState uiState,
            ILoggerFacade logger,
            IEventAggregator eventAggregator,
            IAnnotationInference annotationInference,
            IConstrainedOptimizer constrainedOptimizer,
            SnapOptions snapOptions)
        {
            this.sessionData          = sessionData;
            this.eventAggregator      = eventAggregator;
            this.annotationInference  = annotationInference;
            this.constrainedOptimizer = constrainedOptimizer;
            this.snapOptions          = snapOptions;

            primitivesReaderWriterFactory = new PrimitivesReaderWriterFactory();
            var annotationConstraintsExtractor = new AnnotationConstraintsExtractor();

            snappersManager = new SnappersManager(uiState, sessionData);
            snappersManager.RegisterSnapper(new ConeSnapper());
            snappersManager.RegisterSnapper(new CylinderSnapper());
            snappersManager.RegisterSnapper(new SphereSnapper());
            snappersManager.RegisterSnapper(new SgcSnapper());
            snappersManager.RegisterSnapper(new BgcSnapper());
            snappersManager.RegisterSnapper(new CuboidSnapper());

            wholeShapeOptimizationModel = new WholeShapeOptimizationModel(sessionData, snappersManager, annotationConstraintsExtractor, primitivesReaderWriterFactory);

            eventAggregator.GetEvent <GlobalShortcutEvent>().Subscribe(OnGlobalShortcut);

            logger.Log("NewSnapper created", Category.Debug, Priority.None);
        }
Ejemplo n.º 2
0
 public InitialSnapOptimizationModel(SessionData sessionData, SnappedPrimitive snappedPrimitive, IPrimitiveReconstructor primitiveReconstructor, PrimitivesReaderWriterFactory primitivesReaderWriterFactory)
 {
     this.sessionData                   = sessionData;
     this.snappedPrimitive              = snappedPrimitive;
     this.primitiveReconstructor        = primitiveReconstructor;
     this.primitivesReaderWriterFactory = primitivesReaderWriterFactory;
 }
 public WholeShapeOptimizationModel(
     SessionData sessionData,
     SnappersManager snappersManager,
     IAnnotationConstraintsExtractor annotationConstraintsExtractor,
     PrimitivesReaderWriterFactory primitivesReaderWriterFactory)
 {
     this.sessionData     = sessionData;
     this.snappersManager = snappersManager;
     this.annotationConstraintsExtractor = annotationConstraintsExtractor;
     this.primitivesReaderWriterFactory  = primitivesReaderWriterFactory;
 }
Ejemplo n.º 4
0
 public TemporarySnap(SessionData sessionData,
                      SnappersManager snappersManager,
                      PrimitivesReaderWriterFactory primitivesReaderWriterFactory,
                      IEventAggregator eventAggregator,
                      NewPrimitive newPrimitive,
                      IConstrainedOptimizer optimizer)
 {
     this.sessionData     = sessionData;
     this.snappersManager = snappersManager;
     this.primitivesReaderWriterFactory = primitivesReaderWriterFactory;
     this.eventAggregator = eventAggregator;
     this.newPrimitive    = newPrimitive;
     this.optimizer       = optimizer;
 }