Skip to content
Snippets Groups Projects
  • MaZiFAU's avatar
    5bb470f5
    new ShapeGenerator-System; altered ShapePrefabs; refactored Facts; · 5bb470f5
    MaZiFAU authored
    new ShapeGenerator-System:
    + added Plane/PrismGenerator;
    + Fixed Torus Mesh Generation
    + streamlined Generator process;
    + enabled normal offset;
    + Refactoring
    
    altered ShapePrefabs:
    + added Prism/Cone Prefab an entree in FactSpawner;
    + switched to using new ShapGenerator-System;
    + added BoundingPositioning.cs for dynamic TextPosition;
    
    refactored Facts:
    + added QuadFact
    + mostly moved semantic coherent Facts in own file
    + Some spelling and semantic errors
    5bb470f5
    History
    new ShapeGenerator-System; altered ShapePrefabs; refactored Facts;
    MaZiFAU authored
    new ShapeGenerator-System:
    + added Plane/PrismGenerator;
    + Fixed Torus Mesh Generation
    + streamlined Generator process;
    + enabled normal offset;
    + Refactoring
    
    altered ShapePrefabs:
    + added Prism/Cone Prefab an entree in FactSpawner;
    + switched to using new ShapGenerator-System;
    + added BoundingPositioning.cs for dynamic TextPosition;
    
    refactored Facts:
    + added QuadFact
    + mostly moved semantic coherent Facts in own file
    + Some spelling and semantic errors
MMTConstants.cs 11.85 KiB
using System;
using System.Collections.Generic;
using UnityEngine;

namespace REST_JSON_API
{
    public static class MMTConstants
    {
        public static readonly string Point = "http://mathhub.info/MitM/core/geometry?3DGeometry?point";
        public static readonly string Wall = "?wall";
        public static readonly string LineType = "http://mathhub.info/MitM/core/geometry?Geometry/Common?line_type";
        public static readonly string LineOf = "http://mathhub.info/MitM/core/geometry?Geometry/Common?lineOf";

        public static readonly string OnLine = "http://mathhub.info/MitM/core/geometry?Geometry/Common?onLine";
        public static readonly string Ded = "http://mathhub.info/MitM/Foundation?Logic?ded";
        public static readonly string Eq = "http://mathhub.info/MitM/Foundation?Logic?eq";
        public static readonly string Metric = "http://mathhub.info/MitM/core/geometry?Geometry/Common?metric";
        public static readonly string Angle = "http://mathhub.info/MitM/core/geometry?Geometry/Common?angle_between";
        public static readonly string Sketch = "http://mathhub.info/MitM/Foundation?InformalProofs?proofsketch";
        public static readonly string RealLit = "http://mathhub.info/MitM/Foundation?RealLiterals?real_lit";
        public static readonly string Bool = "?Bool";

        public static readonly string ParallelLine = "http://mathhub.info/MitM/core/geometry?Geometry/Common?parallelLine";
        //public static readonly string RectangleFact = "http://mathhub.info/FrameIT/frameworld?FrameITRectangles?rectangleType";
        //public static readonly string RectangleFactmk = "http://mathhub.info/FrameIT/frameworld?FrameITRectangles?mkRectangle";

        public static readonly string CircleType3d = "http://mathhub.info/FrameIT/frameworld?FrameITCircle?circleType3D";
        public static readonly string MkCircle3d = "http://mathhub.info/FrameIT/frameworld?FrameITCircle?circle3D";
        public static readonly string TriangleMiddlePoint = "http://mathhub.info/FrameIT/frameworld?FrameITTriangles?triangleMidPointWrapper";
        public static readonly string RadiusCircleMetric = "http://mathhub.info/FrameIT/frameworld?FrameITCircle?circleRadius";

        public static readonly string AreaCircle = "http://mathhub.info/FrameIT/frameworld?FrameITCircle?areaCircle";
        public static readonly string VolumeCone = "http://mathhub.info/FrameIT/frameworld?FrameITCone?volumeCone";
        public static readonly string ConeOfCircleApex = "http://mathhub.info/FrameIT/frameworld?FrameITCone?circleConeOf";

        public static readonly string ParametrizedPlane = "http://mathhub.info/MitM/core/geometry?Planes?ParametrizedPlane";
        public static readonly string pointNormalPlane = "http://mathhub.info/MitM/core/geometry?Planes?pointNormalPlane";
        public static readonly string OnCircle = "http://mathhub.info/FrameIT/frameworld?FrameITCircle?pointOnCircle";
        public static readonly string AnglePlaneLine = "http://mathhub.info/FrameIT/frameworld?FrameITCircle?angleCircleLine";
        public static readonly string OrthoCircleLine = "http://mathhub.info/FrameIT/frameworld?FrameITCircle?orthogonalCircleLine";

        public static readonly string TruncatedVolumeCone = "http://mathhub.info/FrameIT/frameworld?FrameITCone?truncatedConeVolume";
        public static readonly string CylinderVolume = "http://mathhub.info/FrameIT/frameworld?FrameITCylinder?cylinderVolume";
        public static readonly string EqualityCircles = "http://mathhub.info/FrameIT/frameworld?FrameITCircle?equalityCircles";
        public static readonly string UnEqualityCircles = "http://mathhub.info/FrameIT/frameworld?FrameITCircle?unequalityCircles";

        public static readonly string ParallelCircles = "http://mathhub.info/FrameIT/frameworld?FrameITCone?parallelCircles";
        public static readonly string RightAngle = "http://mathhub.info/FrameIT/frameworld?FrameITBasics?rightAngle";

        public static readonly string AttachedPositionFunction = "0SET_IN_MMTConstants!";
        public static readonly string FunctionCallFact = "1SET_IN_MMTConstants!";
        public static readonly string FunctionFact = "2SET_IN_MMTConstants!";

        public static readonly string TestType = "http://mathhub.info/FrameIT/frameworld?FrameITCircle?xcircleType3D";

        public static readonly string Product = "http://gl.mathhub.info/MMT/LFX/Sigma?Symbols?Product";
        public static readonly string Tuple = "http://gl.mathhub.info/MMT/LFX/Sigma?Symbols?Tuple";

        public static readonly string ListType = "http://gl.mathhub.info/MMT/LFX/Datatypes?ListSymbols?ListType";
        public static readonly string ListApplicant = "http://gl.mathhub.info/MMT/LFX/Datatypes?ListSymbols?list";
        public static readonly string ListLiteral = "http://gl.mathhub.info/MMT/LFX/Datatypes?ListSymbols?cons";
        public static readonly string ListEnd = "http://gl.mathhub.info/MMT/LFX/Datatypes?ListSymbols?nil_constant";

        public static readonly string AddRealLit = "http://mathhub.info/MitM/Foundation?RealLiterals?plus_real_lit";
        public static readonly string TimesRealLit = "http://mathhub.info/MitM/Foundation?RealLiterals?times_real_lit";
        public static readonly string ProjL = "http://gl.mathhub.info/MMT/LFX/Sigma?Symbols?Projl";
        public static readonly string ProjR = "http://gl.mathhub.info/MMT/LFX/Sigma?Symbols?Projr";

        public static readonly string PartialAggregate = "?Step";
        public static readonly string FeedForwardWhile = "?StepUntil";
        public static readonly string Predicate = "?Pred";
        public static readonly string ToArray = "?ToArray";

        public static readonly string Sin = "Sin";
        public static readonly string Cos = "Cos";
        public static readonly string Divide = "Divide";
        public static readonly string Subtract = "Subtract";
        public static readonly string SquareRoot = "SquareRoot";
        public static readonly string LessThan = "LessThan";
        //public static readonly string MakeUnityEngineVector3 = "UnityEngine.Vector3";
        public static readonly string MakeObjectArray = "MakeObjectArray";
        public static readonly string PropertyX = "x";
        public static readonly string PropertyY = "y";
        public static readonly string PropertyZ = "z";
        public static readonly string TupelToVector = "TupelToVector";


        public const string ScrollOppositeLen = "http://mathhub.info/FrameIT/frameworld?OppositeLen";
        public const string ScrollSupplementaryAngles = "http://mathhub.info/FrameIT/frameworld?SupplementaryAngles";
        public const string ScrollAngleSum = "http://mathhub.info/FrameIT/frameworld?AngleSum";
        public const string ScrollPythagoras = "http://mathhub.info/FrameIT/frameworld?Pythagoras";
        public const string ScrollCylinderVolumeScroll = "http://mathhub.info/FrameIT/frameworld?CylinderVolumeScroll";
        public const string ScrollCircleLineAngleToAngleScroll = "http://mathhub.info/FrameIT/frameworld?CircleLineAngleToAngleScroll";
        public const string ScrollMidpoint = "http://mathhub.info/FrameIT/frameworld?Midpoint";
        public const string ScrollCircleScroll = "http://mathhub.info/FrameIT/frameworld?CircleScroll";
        public const string ScrollCircleLineAngleScroll = "http://mathhub.info/FrameIT/frameworld?CircleLineAngleScroll";
        public const string ScrollCircleAreaScroll = "http://mathhub.info/FrameIT/frameworld?CircleAreaScroll";
        public const string ScrollConeVolumeScroll = "http://mathhub.info/FrameIT/frameworld?ConeVolumeScroll";
        public const string ScrollTruncatedConeVolumeScroll = "http://mathhub.info/FrameIT/frameworld?TruncatedConeVolumeScroll";
        public const string ScrollCannonBall = "http://mathhub.info/FrameIT/frameworld?WBouncingScroll";

        public static readonly IReadOnlyDictionary<string, Type> OMS_TO_TYPE = new Dictionary<string, Type>()
        {
            { Point,
                typeof(PointFact) },
            { Metric,
                typeof(LineFact) },
            { Angle,
                typeof(AngleFact) },
            { Eq,
                typeof(RightAngleFact) },
            { RightAngle,
                typeof(RightAngleFact) },
            { LineType,
                typeof(RayFact) },
            { LineOf,
                typeof(RayFact) },
            { OnLine,
                typeof(OnLineFact) },
            { ParallelLine,
                typeof(ParallelLineFact) },
            { CircleType3d,
                typeof(CircleFact) },
            { OnCircle,
                typeof(OnCircleFact) },
            { AnglePlaneLine,
                typeof(AngleCircleLineFact) },
            { RadiusCircleMetric,
                typeof(RadiusFact) },
            { AreaCircle,
                typeof(AreaCircleFact) },
            { OrthoCircleLine,
                typeof(OrthogonalCircleLineFact) },
            { VolumeCone,
                typeof(ConeVolumeFact) },
            { TruncatedVolumeCone,
                typeof(TruncatedConeVolumeFact) },
            { CylinderVolume,
                typeof(CylinderVolumeFact) },
            { TestType,
                typeof(TestFact) },
            { EqualityCircles,
                typeof(EqualCirclesFact) },
            { UnEqualityCircles,
                typeof(UnEqualCirclesFact) },
            { FunctionFact,
                typeof(FunctionFact) },
            { FunctionCallFact,
                typeof(FunctionCallFact) },
            { AttachedPositionFunction,
                typeof(AttachedPositionFunction) },

            { RealLit,
                typeof(float) },
            { Tuple,
                typeof(TupleFact) },
            { Product,
                typeof(Tuple) },
            { TupelToVector,
                typeof(Vector3) },
            { ListType,
                typeof(List<>) },

            { AddRealLit,
                typeof(float) }, //typeof(Func<,,>).MakeGenericType(typeof(float), typeof(float), typeof(float))

            { MkCircle3d, null }, //typeof(CircleFact) },
            { ConeOfCircleApex, null }, //typeof(ConeVolumeFact) },

            { Ded, null },
            { Sketch, null },
            { TriangleMiddlePoint, null },
            { ParametrizedPlane, null },
            { pointNormalPlane, null },
            { ParallelCircles, null },

            { "R",
                typeof(float) },
            { typeof(float).ToString(),
                typeof(float) },
            { typeof(double).ToString(),
                typeof(double) },
            { typeof(string).ToString(),
                typeof(string) },
            { typeof(Vector3).ToString(),
                typeof(Vector3) }
        };
        public static readonly IReadOnlyDictionary<Type, string> TYPE_TO_OMS = OMS_TO_TYPE.ReverseKeyValInto(new()
        { // **Overrides**
          //{ typeof(Vector3),
          //    Tuple },
        });

        public static readonly IReadOnlyDictionary<string, string> URI_TO_TypeOF = new Dictionary<string, string> {
            { MkCircle3d,
                CircleType3d },
            { LineOf,
                LineType },
        };
        public static readonly IReadOnlyDictionary<string, string> TypeOF_TO_URI = URI_TO_TypeOF.ReverseKeyVal();

        public static readonly IReadOnlyDictionary<string, string> HeterogenApplication_TO_TypeOF = new Dictionary<string, string> {
            { Tuple,
                Product },
            { Product,
                Product },
        };
        public static readonly IReadOnlyDictionary<string, string> TypeOF_TO_HeterogenApplication = HeterogenApplication_TO_TypeOF.ReverseKeyVal();

        public static readonly IReadOnlyDictionary<string, string> HomogenApplication_TO_TypeOF = new Dictionary<string, string> {
            { ListApplicant,
                ListType },
        };
        public static readonly IReadOnlyDictionary<string, string> TypeOF_TO_HomogenApplication = HomogenApplication_TO_TypeOF.ReverseKeyVal();
    }
}