Skip to content

Commit d472245

Browse files
Add files via upload
1 parent 68df8ce commit d472245

File tree

2 files changed

+1672
-18
lines changed

2 files changed

+1672
-18
lines changed

GrasshopperSyntax/Grasshopper.py

Lines changed: 41 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,6 @@
1616
version = sys.version_info[0]
1717

1818

19-
class Doc:
20-
def __init__(self):
21-
self.DisplayName = "gCPy.Doc(DocDisplayName)"
22-
self.FilePath = "gCPy.Doc(DocFilePath)"
23-
24-
2519
class Line:
2620
def __init__(self, *args):
2721
"""Adds new line using two input points, or two input lists or 6 input doubles
@@ -53,7 +47,6 @@ def __init__(self, *args):
5347
self.X2 = pointb.X
5448
self.Y2 = pointb.Y
5549
self.Z2 = pointb.Z
56-
5750
elif version == 3:
5851
if isinstance(args[0], str) and isinstance(args[1], str):
5952
pointa = Point(args[0])
@@ -80,6 +73,14 @@ def addLine(self):
8073
+ str(self.Y2) + ", " \
8174
+ str(self.Z2) + ")"
8275

76+
def __repr__(self):
77+
return "gCPy.Line(" + str(self.X1) + ", " \
78+
+ str(self.Y1) + ", " \
79+
+ str(self.Z1) + ", " \
80+
+ str(self.X2) + ", " \
81+
+ str(self.Y2) + ", " \
82+
+ str(self.Z2) + ")"
83+
8384
def length(self):
8485
return ((self.X2 - self.X1) ** 2 + (self.Y2 - self.Y1) ** 2 + (self.Z2 - self.Z1) ** 2) ** 0.5
8586

@@ -88,13 +89,7 @@ def pointOnLine(self, parameter=0.5):
8889
(self.Y2 - self.Y1) * parameter + self.Y1, \
8990
(self.Z2 - self.Z1) * parameter + self.Z1)
9091

91-
def __str__(self):
92-
return "gCPy.Line(" + str(self.X1) + ", " \
93-
+ str(self.Y1) + ", " \
94-
+ str(self.Z1) + ", " \
95-
+ str(self.X2) + ", " \
96-
+ str(self.Y2) + ", " \
97-
+ str(self.Z2) + ")"
92+
9893

9994

10095
class Point:
@@ -151,9 +146,38 @@ def __init__(self, x=0., y=0., z=0.):
151146
self.Z = z
152147
self.addPoint = "gCPy.Point(" + str(x) + "," + str(y) + "," + str(z) + ")"
153148

149+
def __repr__(self):
150+
return "gCPy.Point(" + str(self.X) + "," + str(self.Y) + "," + str(self.Z) + ")"
151+
154152
def __str__(self):
155153
return "gCPy.Point(" + str(self.X) + "," + str(self.Y) + "," + str(self.Z) + ")"
156154

155+
class Surface:
156+
def __init__(self, *args):
157+
if len(args) == 4:
158+
if isinstance(args[0], Point) and isinstance(args[1], Point) and isinstance(args[2], Point) and isinstance(args[3], Point):
159+
self.P1 = args[0]
160+
self.P2 = args[1]
161+
self.P3 = args[2]
162+
self.P4 = args[3]
163+
self.addSurface = "gCPy.Surface("+ str(args[0].X) + "," \
164+
+ str(args[0].Y) + "," \
165+
+ str(args[0].Z) + "," \
166+
+ str(args[1].X) + "," \
167+
+ str(args[1].Y) + "," \
168+
+ str(args[1].Z) + "," \
169+
+ str(args[2].X) + "," \
170+
+ str(args[2].Y) + "," \
171+
+ str(args[2].Z) + "," \
172+
+ str(args[3].X) + "," \
173+
+ str(args[3].Y) + "," \
174+
+ str(args[3].Z) + "," \
175+
+ ")"
176+
elif len(args) == 2:
177+
pass
178+
else:
179+
print "you have to create surface from 4 points"
180+
157181

158182
########################### DEFINE METHODS ################################
159183

@@ -173,19 +197,18 @@ def addLine(*args):
173197

174198
def addPoint(*args):
175199
"""
176-
177200
:param args:
178201
:return:
179202
"""
180203
if len(args) == 1:
181204
return Point(args[0])
182205
elif len(args) == 3:
183-
return Point(args[0], args[1], args[2]).addPoint
206+
return Point(args[0], args[1], args[2])
184207

185208

186-
##################################vars#################################
209+
def addSurface(*args):
210+
return Surface(args[0], args[1], args[2], args[3]).addSurface
187211

188-
doc = Doc();
189212

190213
if __name__ == '__main__':
191214
print __name__

0 commit comments

Comments
 (0)