Hi all,
I used chatGPT to write a script to create an actual pinecone volume like the pictures shown. However, it didn’t run successfully.
The script is:
import math
import Rhino.Geometry as rg
# Parameters
num_spirals = 5 # Number of spirals (layers) in the pinecone
num_points_per_spiral = 40 # Number of points per spiral
cone_height = 0.2 # Height of each cone
base_radius = 1.0 # Base radius of the cone
rotation_angle = 137.5 # Angle for rotating cones
# Initialize lists to store cones
cones = [ ]
for i in range(num_spirals):
for j in range(num_points_per_spiral):
angle = math.radians(j * rotation_angle)
radius = base_radius - (i * base_radius / num_spirals)
x = radius * math.cos(angle)
y = radius * math.sin(angle)
z = i * cone_height
center = rg.Point3d(x, y, z)
circle = rg.Circle(center, base_radius * (1 - i / num_spirals))
cone_base = rg.Plane(center, rg.Vector3d.ZAxis)
cone = rg.Cone(cone_base, cone_height)
transformation = rg.Transform.Rotation(angle, rg.Vector3d.ZAxis, center)
cone.Transform(transformation)
cones.append(cone)
# Output cones to Grasshopper
a = cones
what grasshopper said:
Runtime error (ArgumentTypeException): CreateInstance() takes at most 3 arguments (2 given)
Traceback:
line 25, in script
I highlighted the problematic line: cone = rg.Cone(cone_base, cone_height)
Thanks a lot.
1 post - 1 participant
