-
Notifications
You must be signed in to change notification settings - Fork 0
/
GHC_CardinalDeconstruct.cs
68 lines (60 loc) · 2.84 KB
/
GHC_CardinalDeconstruct.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
using System;
using System.Collections.Generic;
using Grasshopper.Kernel;
using Rhino.Geometry;
using Tortoise.DataTypes;
namespace Tortoise
{
public class GHC_CardinalDeconstruct : GH_Component
{
public GHC_CardinalDeconstruct()
: base("Deconstruct Cardinal System", "Cardinal",
"Deconstruct a cardinal system into its component vectors",
"Tortoise", "Project")
{
}
protected override void RegisterInputParams(GH_Component.GH_InputParamManager pManager)
{
pManager.AddGenericParameter("Cardinal System", "C", "The cardinal system to deconstruct", GH_ParamAccess.item);
}
protected override void RegisterOutputParams(GH_Component.GH_OutputParamManager pManager)
{
pManager.AddVectorParameter("True North", "TN", "The true north vector", GH_ParamAccess.item);
pManager.AddVectorParameter("True East", "TE", "The true east vector", GH_ParamAccess.item);
pManager.AddVectorParameter("True South", "TS", "The true south vector", GH_ParamAccess.item);
pManager.AddVectorParameter("True West", "TW", "The true west vector", GH_ParamAccess.item);
pManager.AddVectorParameter("Project North", "PN", "The project north vector", GH_ParamAccess.item);
pManager.AddVectorParameter("Project East", "PE", "The project east vector", GH_ParamAccess.item);
pManager.AddVectorParameter("Project South", "PS", "The project south vector", GH_ParamAccess.item);
pManager.AddVectorParameter("Project West", "PW", "The project west vector", GH_ParamAccess.item);
pManager.AddTextParameter("Name", "N", "The name of the cardinal system", GH_ParamAccess.item);
}
protected override void SolveInstance(IGH_DataAccess DA)
{
CardinalSystem cardinalSystem = null;
if (!DA.GetData(0, ref cardinalSystem)) { return; }
DA.SetData(0, cardinalSystem.TrueNorth);
DA.SetData(1, cardinalSystem.TrueEast);
DA.SetData(2, cardinalSystem.TrueSouth);
DA.SetData(3, cardinalSystem.TrueWest);
DA.SetData(4, cardinalSystem.ProjectNorth);
DA.SetData(5, cardinalSystem.ProjectEast);
DA.SetData(6, cardinalSystem.ProjectSouth);
DA.SetData(7, cardinalSystem.ProjectWest);
DA.SetData(8, cardinalSystem.Name);
}
protected override System.Drawing.Bitmap Icon
{
get
{
//You can add image files to your project resources and access them like this:
// return Resources.IconForThisComponent;
return null;
}
}
public override Guid ComponentGuid
{
get { return new Guid("471F8043-253D-4BA5-99B6-A380A97DA075"); }
}
}
}