Х
Size: a a a
Х
Х
Х
Х
py:
class a:
def __getattr
__(s,k):
if k == "a": return 10
else: super().__getattr__(k)
pyi:
class a:
a: Literal[10]
Х
MD
🚲U
MD
Х
entities.each { |o| o.erase! }
center = Geom::Point3d.new(0, 0, 0)
x_base = entities.add_circle(center, Geom::Vector3d.new(1, 0, 0), 40, 100)
y_base = entities.add_circle(center, Geom::Vector3d.new(0, 1, 0), 40, 100)
last = y_base
for edge in 1..50
normal = Geom::Vector3d.new(x_base[edge].start.position.x, x_base[edge].start.position.y, x_base[edge].start.position.z).normalize
edges = entities.add_circle(center_point, normal, 40, 100)
if edge % 51 >= 25
edges = edges[50..99] + edges[0..49]
end
for i in 0..99
if edges[i].start == last[i].start
entities.add_face(
[edges[i].start,
last[i].end,
edges[i].end
]
)
elsif edges[i].end == last[i].end
entities.add_face(
[edges[i].start,
last[i].start,
edges[i].end
]
)
else
if edge == 50
entities.add_face(
[edges[i].start,
last[i+1].start,
last[i+1].end,
edges[i].end
]
)
else
entities.add_face(
[edges[i].start,
last[i].start,
last[i].end,
edges[i].end
]
)
end
end
end
last = edges
end
Х
Х