示例#1
0
 protected override void RegisterInputParams(GH_Component.GH_InputParamManager pManager)
 {
     pManager.Register_PointParam("Singularity Points", "SP", "List of points, where each point relates to a vector (parallel to V)", GH_ParamAccess.list);
     pManager.Register_DoubleParam("Exponent", "h", "h controls the fall-off of the gravity effect, higher is faster fall-off", 1.0d);
     pManager.Register_DoubleParam("Factor", "k", "Scalar multiple of the gravity force (positive for attraction, negative for repulsion)", 1.0d);
     pManager.Register_BooleanParam("Exact", "e", "Use exact geodesic distances to calculate path when on a surface, otherwise use a fast approximation", false);
 }
示例#2
0
        protected override void RegisterInputParams(GH_Component.GH_InputParamManager pManager)
        {
            pManager.Register_IntegerParam("Step count", "Steps", "Number of steps to simulate per run of the simulation. 0 to run until integration is complete", 0);
            pManager.Register_DoubleParam("Tolerance", "Tol", "Distance from field where integration will halt. 0 to run until integration is complete", 10.0d);
            pManager.Register_BooleanParam("Stop", "Stop", "True if the integration will stop when the integration line has stopped or has wound past the stop winding angle", true);
            pManager.Register_DoubleParam("Winding Stop Angle", "StopA", "The winding angle is used to stop the integration if it winds around the set angle (radians). Used to stop the integration at singularities or orbits", 0.0d);
            pManager.Register_DoubleParam("Interpolation Radius", "IntrpR", "Radius to use in vector interpolation method. 0 to use closest vector only", 0.0d);
            pManager.Register_BRepParam("Bounding Brep", "Bound", "Bounding area to contain the integration within");
            pManager.Register_DoubleParam("Snapping Tolerance", "SnapT", "Tolerance range to test for snapping to the start point, used to detect and close orbits. 0 to disable check", 0.0d);
            pManager.Register_DoubleParam("Snapping Minimum Angle", "SnapA", "If snapping tolerance is set, this sets the minimum difference in angles before a snap occurs. 0 to disable check. Max is 1.", 0.0d);
            pManager.Register_SurfaceParam("Surface", "Surf", "Surface to constrain the integration to, the intergration will snap to this surface as it continues");
            pManager.Register_BooleanParam("Tensor Field", "Tensor", "Set to true if your input is actually a tensor field (list of planes)", false);
            pManager.Register_IntegerParam("Tensor Direction", "TensDir", "Which direction to integrate across if we're using a tensor field (0 = X, 1 = Y, 2 = Z)", 0.0d);
            pManager.Register_IntegerParam("Tensor Axes", "TensAxs", "Which Axes are used in the line continuity check, if enabled (0 = X, 1 = Y, 2 = Z)", GH_ParamAccess.list);
            pManager.Register_BooleanParam("Line Continuity", "LCont", "Force lines to follow a straighter path if one is available", false);

            pManager[0].Optional  = true;
            pManager[1].Optional  = true;
            pManager[2].Optional  = true;
            pManager[3].Optional  = true;
            pManager[4].Optional  = true;
            pManager[5].Optional  = true;
            pManager[6].Optional  = true;
            pManager[7].Optional  = true;
            pManager[8].Optional  = true;
            pManager[9].Optional  = true;
            pManager[10].Optional = true;
            pManager[11].Optional = true;
            pManager[12].Optional = true;
        }
示例#3
0
 protected override void RegisterInputParams(GH_Component.GH_InputParamManager pManager)
 {
     pManager.Register_PointParam("Sample Points", "SP", "Tree of lists representing N-dimensional points. These points must be parallel to the list of incoming Sample Vectors.", GH_ParamAccess.tree);
     pManager.Register_VectorParam("Sample Vectors", "SV", "Tree of lists representing M-dimensional vectors. These vectors must be parallel to the list of incoming Sample Points.", GH_ParamAccess.tree);
     pManager.Register_PointParam("Test Points To Interpolate", "TP", "Tree of lists representing N-dimensional points, these points will be the reference points for each interpolation", GH_ParamAccess.tree);
     pManager.Register_DoubleParam("Radius", "R", "Radius from each test point to use in the interpolation", 0.0d);
     pManager.Register_DoubleParam("Interpolation Strength", "p", "1 for linear, n for higher strengths", 2.0d);
 }
示例#4
0
 protected override void RegisterInputParams(GH_Component.GH_InputParamManager inputManager)
 {
     inputManager.Register_DoubleParam("Thickness", "T", "Default thickness", 1.0, GH_ParamAccess.item);                 //name, nick, description, default, isList
     inputManager.Register_DoubleParam("Thickness scale", "dT", "Default thickness scale", 0.9, GH_ParamAccess.item);    //name, nick, description, default, isList
     //profile settings
     inputManager.Register_CurveParam("Profile curve", "P", "Default profile curve", GH_ParamAccess.item);               //name, nick, description, default, isList
     inputManager.Register_PlaneParam("Profile Pivot", "PP", "Profile pivot plane", Plane.WorldXY, GH_ParamAccess.item); //name, nick, description, default, isList
 }
示例#5
0
 protected override void RegisterInputParams(GH_Component.GH_InputParamManager pManager)
 {
     pManager.Register_PlaneParam("Plane", "Pl", "Plane for the vortex to operate on. The origin of the plane is the singularity point of the vortex", GH_ParamAccess.list);
     pManager.Register_DoubleParam("Exponent", "h", "Distance from field where integration will halt. 0 to run until integration is complete", 1.0d);
     pManager.Register_DoubleParam("Factor", "k", "Scalar multiple of the gravity force (positive for attraction, negative for repulsion)", 1.0d);
     pManager.Register_DoubleParam("Rotational Factor", "a", "Scalar multiple of the effect the spiral causes on the vector field", 1.0d);
     pManager.Register_BooleanParam("Exact", "e", "Use exact geodesic distances to calculate spiral path when on a surface, otherwise use a fast approximation", false);
     pManager.Register_BooleanParam("Funnel", "F", "True if you want a funnel instead of a vortex. A funnel will attract on one side and shoot out the other", false);
     pManager.Register_BooleanParam("Reverse", "R", "True if you want to reverse the spiral when constrained to a surface", false);
 }
 protected override void RegisterInputParams(GH_Component.GH_InputParamManager pManager)
 {
     pManager.Register_CurveParam("Curves", "C", "The curves group", GH_ParamAccess.list);
     pManager.Register_DoubleParam("Lengths", "L", "One length for each curve. If the number of lengths is less than the one of curves, length values are repeated in pattern.\nIf there are no lengths, then the physical length of the curves is computed.", GH_ParamAccess.list);
     pManager[1].Optional = true;
     pManager.Register_LineParam("Wanted path", "P", "The lines from the start to the end of the path", GH_ParamAccess.list);
 }
示例#7
0
        protected override void RegisterInputParams(GH_Component.GH_InputParamManager inputManager)
        {
            inputManager.Register_StringParam("Source String", "S", "Source String. Each symbol in the string represents a command that drives the Turtle.", GH_ParamAccess.item);//name, nick, description, default, isList

            //Default step & step scale
            inputManager.Register_DoubleParam("Step length", "L", "Length of the turle's step.", 10.0, GH_ParamAccess.item);             //name, nick, description, default, isList
            inputManager.Register_DoubleParam("Step length scale", "dL", "Step length scale", 0.9, GH_ParamAccess.item);                 //name, nick, description, default, isList

            inputManager.Register_DoubleParam("Angle", "A", "Default angle of the turle used for rotation.", 90.0, GH_ParamAccess.item); //name, nick, description, default, isList
            inputManager.Register_DoubleParam("Angle scale", "dA", "Default angle scale", 0.9, GH_ParamAccess.item);                     //name, nick, description, default, isList

            //Position + Orientation of the turtle:
            inputManager.Register_PlaneParam("Initial Position and Orientation", "O", "Initial Position and Orientation of the Turtle", _defaultInitialOrientation, GH_ParamAccess.item); //name, nick, description, default, isList

            inputManager.Register_GenericParam("Tube Settings", "TS", "Tube Settings", GH_ParamAccess.item);                                                                              //name, nick, description, default, isList
            Params.Input[6].Optional = true;
        }
示例#8
0
        protected override void RegisterInputParams(GH_Component.GH_InputParamManager pManager)
        {
            pManager.Register_BooleanParam("Respawn", "Respawn", "True if the particles should be respawned when they reach the end of their lifetimes", true);
            pManager.Register_IntegerParam("New Spawn Step Count", "NewSpK", "Steps between spawning a new set of particles at the start points (0 to disable)", 0);
            pManager.Register_IntegerParam("Randomize New Spawn", "RndSp", "Randomly add or subtract up to this number from the new spawn time to create random distributions of particles (0 to disable)", 0);
            pManager.Register_DoubleParam("Interpolation Radius", "IntrpR", "Radius to use in vector interpolation method. 0 to use closest vector only", 0.0d);
            pManager.Register_BRepParam("Bounding Brep", "Bound", "Bounding area to contain the integration within");
            pManager.Register_DoubleParam("Snapping Tolerance", "SnapT", "Tolerance range to test for snapping to the start point, used to detect and close orbits. 0 to disable check", 0.0d);
            pManager.Register_DoubleParam("Snapping Minimum Angle", "SnapA", "If snapping tolerance is set, this sets the minimum difference in angles before a snap occurs. 0 to disable check. Max is 1.", 0.0d);
            pManager.Register_SurfaceParam("Surface", "Surf", "Surface to constrain the integration to, the intergration will snap to this surface as it continues");
            pManager.Register_BooleanParam("Line Continuity", "LCont", "Force lines to follow a straighter path if one is available", false);

            pManager[0].Optional = true;
            pManager[1].Optional = true;
            pManager[2].Optional = true;
            pManager[3].Optional = true;
            pManager[4].Optional = true;
            pManager[5].Optional = true;
            pManager[6].Optional = true;
            pManager[7].Optional = true;
            pManager[8].Optional = true;
        }
示例#9
0
 protected override void RegisterInputParams(GH_Component.GH_InputParamManager pManager)
 {
     pManager.Register_SurfaceParam("Surfaces", "S", "List of surfaces to prevent collisions with", GH_ParamAccess.list);
     pManager.Register_DoubleParam("Restitution", "R", "Restitution of the surfaces (Bounce factor) to apply when colliding with a surface", 1.0d);
 }
示例#10
0
 protected override void RegisterInputParams(GH_Component.GH_InputParamManager pManager)
 {
     pManager.Register_DoubleParam("Scale Factor", "S", "Amount to scale by", 1.0d);
     pManager.Register_DoubleParam("Fall Off Range", "F", "Distance to begin logarithmic scaling", 1000.0d);
 }
示例#11
0
 protected override void RegisterInputParams(GH_Component.GH_InputParamManager pManager)
 {
     pManager.Register_GenericParam("Dynamics", "D", "List of dynames to accelerate", GH_ParamAccess.list);
     pManager.Register_DoubleParam("Drag", "Dg", "Drag is used to modify the acceleration speed over time", 1.0d);
 }
示例#12
0
 protected override void RegisterInputParams(GH_Component.GH_InputParamManager pManager)
 {
     pManager.Register_PlaneParam("Plane", "Pl", "Plane for the vortex to operate on. The origin of the plane is the singularity point of the vortex", GH_ParamAccess.list);
     pManager.Register_DoubleParam("k1", "k1", "Scalar multiple of the effect of the plane", 1.0d);
     pManager.Register_DoubleParam("k2", "k2", "Exponent controlling the curves steepness", 0.5d);
 }