コード例 #1
0
        private void CreateBlueprint(ShapeBlueprintFactory.ShapeBlueprintType blueprintType)
        {
            ShapeBlueprint blueprint     = m_ShapeBlueprintFactory.CreateShapeBlueprint(blueprintType);
            VisualElement  visualElement = ShapeBlueprintEditorFactory.GetVisualElement(blueprint, RemoveBlueprint);

            m_BaseVisualElement.Add(visualElement);
        }
コード例 #2
0
        public static VisualElement GetVisualElement(ShapeBlueprint blueprint,
                                                     Action <ShapeBlueprint, VisualElement> deleteAction)
        {
            VisualElement visualElement = null;

            switch (blueprint)
            {
            case PointBlueprint pointBlueprint:
                visualElement = new PointBlueprintEditor(pointBlueprint, deleteAction).GetVisualElement();
                break;

            case LineBlueprint lineBlueprint:
                visualElement = new LineBlueprintEditor(lineBlueprint, deleteAction).GetVisualElement();
                break;

            case PolygonBlueprint polygonBlueprint:
                visualElement = new PolygonBlueprintEditor(polygonBlueprint, deleteAction).GetVisualElement();
                break;

            case ParallelepipedBlueprint parallelepipedBlueprint:
                visualElement = new ParallelepipedBlueprintEditor(parallelepipedBlueprint, deleteAction).GetVisualElement();
                break;

            case CubeBlueprint cubeBlueprint:
                visualElement = new CubeBlueprintEditor(cubeBlueprint, deleteAction).GetVisualElement();
                break;

            case PyramidBlueprint pyramidBlueprint:
                visualElement = new PyramidBlueprintEditor(pyramidBlueprint, deleteAction).GetVisualElement();
                break;

            case RegularPyramidBlueprint regularPyramidBlueprint:
                visualElement = new RegularPyramidBlueprintEditor(regularPyramidBlueprint, deleteAction).GetVisualElement();
                break;

            case TetrahedronBlueprint tetrahedronBlueprint:
                visualElement = new TetrahedronBlueprintEditor(tetrahedronBlueprint, deleteAction).GetVisualElement();
                break;

            case PrismBlueprint prismBlueprint:
                visualElement = new PrismBlueprintEditor(prismBlueprint, deleteAction).GetVisualElement();
                break;

            case RegularPrismBlueprint regularPrismBlueprint:
                visualElement = new RegularPrismBlueprintEditor(regularPrismBlueprint, deleteAction).GetVisualElement();
                break;

            case PointPerpendicularProjectionBlueprint projectionOnLineBlueprint:
                visualElement = new PointPerpendicularProjectionBlueprintEditor(projectionOnLineBlueprint, deleteAction).GetVisualElement();
                break;

            case PointOfIntersectionBlueprint pointOfIntersectionBlueprint:
                visualElement = new PointOfIntersectionBlueprintEditor(pointOfIntersectionBlueprint, deleteAction).GetVisualElement();
                break;

            case PointOnSurfaceBlueprint pointOnSurfaceBlueprint:
                visualElement = new PointOnSurfaceBlueprintEditor(pointOnSurfaceBlueprint, deleteAction).GetVisualElement();
                break;

            case PointOnLineBlueprint pointOnLineBlueprint:
                visualElement = new PointOnLineEditor(pointOnLineBlueprint, deleteAction).GetVisualElement();
                break;

            case PointProjectionAlongLineBlueprint pointProjectionAlongLineBlueprint:
                visualElement = new PointProjectionAlongLineBlueprintEditor(pointProjectionAlongLineBlueprint, deleteAction).GetVisualElement();
                break;

            case PointProjectionFromPointBlueprint pointProjectionFromPointBlueprint:
                visualElement = new PointProjectionFromPointBlueprintEditor(pointProjectionFromPointBlueprint, deleteAction).GetVisualElement();
                break;
            }
            if (visualElement == null)
            {
                return(null);
            }

            visualElement.AddToClassList("container");

            return(visualElement);
        }
コード例 #3
0
 private void RemoveBlueprint(ShapeBlueprint blueprint, VisualElement blueprintVisualElement)
 {
     m_ShapeBlueprintFactory.Remove(blueprint);
     m_BaseVisualElement.Remove(blueprintVisualElement);
 }