Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
v1_t = cpv.normalize(cpv.sub(p1_t, p2_t))
v2_t = cpv.normalize(cpv.sub(p3_t, p2_t))
normal_t = cpv.normalize(cpv.cross_product(v1_t, v2_t))
v2_t = cpv.normalize(cpv.cross_product(normal_t, v1_t))
p1_t2 = cpv.add(v1_t, p2_t)
p3_t2 = cpv.add(v2_t, p2_t)
print_info("Newnormal", p1_t2, p2_t, p3_t2)
if vm1!=None:
v1 = cpv.scale(cpv.normalize(v1), vm1)
if vm2!=None:
v2 = cpv.scale(cpv.normalize(v2), vm2)
centrum = p2
if center:
corner1 = cpv.add(cpv.add(centrum, v1), v2)
corner2 = cpv.sub(cpv.add(centrum, v1), v2)
corner3 = cpv.sub(cpv.sub(centrum, v1), v2)
corner4 = cpv.add(cpv.sub(centrum, v1), v2)
else:
corner1 = cpv.add(cpv.add(centrum, v1), v2)
corner2 = cpv.add(centrum, v1)
corner3 = centrum
corner4 = cpv.add(centrum, v2)
return plane(corner1, corner2, corner3, corner4, normal, settings)
v1_t = cpv.normalize(cpv.sub(p1_t, p2_t))
v2_t = cpv.normalize(cpv.sub(p3_t, p2_t))
normal_t = cpv.normalize(cpv.cross_product(v1_t, v2_t))
v2_t = cpv.normalize(cpv.cross_product(normal_t, v1_t))
p1_t2 = cpv.add(v1_t, p2_t)
p3_t2 = cpv.add(v2_t, p2_t)
print_info("Newnormal", p1_t2, p2_t, p3_t2)
if vm1!=None:
v1 = cpv.scale(cpv.normalize(v1), vm1)
if vm2!=None:
v2 = cpv.scale(cpv.normalize(v2), vm2)
centrum = p2
if center:
corner1 = cpv.add(cpv.add(centrum, v1), v2)
corner2 = cpv.sub(cpv.add(centrum, v1), v2)
corner3 = cpv.sub(cpv.sub(centrum, v1), v2)
corner4 = cpv.add(cpv.sub(centrum, v1), v2)
else:
corner1 = cpv.add(cpv.add(centrum, v1), v2)
corner2 = cpv.add(centrum, v1)
corner3 = centrum
corner4 = cpv.add(centrum, v2)
return plane(corner1, corner2, corner3, corner4, normal, settings)
def cgo_tetrahedron(x, y, z, r):
vertices = [cpv.add((x, y, z), cpv.scale(v, r)) for v in [
[0., 1., 0.],
[0.0, -0.3338068592337708, 0.9426414910921784],
[0.8163514779470693, -0.3338068592337708, -0.471320745546089],
[-0.816351477947069, -0.3338068592337708, -0.4713207455460897]
]]
return [
cgo.BEGIN, cgo.TRIANGLES,
cgo.NORMAL, 0.8165448970931916, 0.33317549135767066, 0.4714324161421696,
cgo.VERTEX] + vertices[0] + [
cgo.VERTEX] + vertices[1] + [
cgo.VERTEX] + vertices[2] + [
cgo.NORMAL, 0., 0.3331754913576707, -0.9428648322843389,
cgo.VERTEX] + vertices[0] + [
cgo.VERTEX] + vertices[2] + [
cgo.VERTEX] + vertices[3] + [
cgo.NORMAL, -0.8165448970931919, 0.3331754913576705, 0.4714324161421693,
if vm1!=None:
v1 = cpv.scale(cpv.normalize(v1), vm1)
if vm2!=None:
v2 = cpv.scale(cpv.normalize(v2), vm2)
centrum = p2
if center:
corner1 = cpv.add(cpv.add(centrum, v1), v2)
corner2 = cpv.sub(cpv.add(centrum, v1), v2)
corner3 = cpv.sub(cpv.sub(centrum, v1), v2)
corner4 = cpv.add(cpv.sub(centrum, v1), v2)
else:
corner1 = cpv.add(cpv.add(centrum, v1), v2)
corner2 = cpv.add(centrum, v1)
corner3 = centrum
corner4 = cpv.add(centrum, v2)
return plane(corner1, corner2, corner3, corner4, normal, settings)
v2 = cpv.sub(p3, p2)
normal = cpv.cross_product(v1, v2)
if 'translate' in settings:
vtran = cpv.scale(cpv.normalize(normal), settings['translate'])
p1_t = cpv.sub(p1, vtran)
p2_t = cpv.sub(p2, vtran)
p3_t = cpv.sub(p3, vtran)
print("New coordinates are:")
print_info("New", p1_t, p2_t, p3_t)
print("New coordinates are for normalized plane:")
v1_t = cpv.normalize(cpv.sub(p1_t, p2_t))
v2_t = cpv.normalize(cpv.sub(p3_t, p2_t))
normal_t = cpv.normalize(cpv.cross_product(v1_t, v2_t))
v2_t = cpv.normalize(cpv.cross_product(normal_t, v1_t))
p1_t2 = cpv.add(v1_t, p2_t)
p3_t2 = cpv.add(v2_t, p2_t)
print_info("Newnormal", p1_t2, p2_t, p3_t2)
if vm1!=None:
v1 = cpv.scale(cpv.normalize(v1), vm1)
if vm2!=None:
v2 = cpv.scale(cpv.normalize(v2), vm2)
centrum = p2
if center:
corner1 = cpv.add(cpv.add(centrum, v1), v2)
corner2 = cpv.sub(cpv.add(centrum, v1), v2)
corner3 = cpv.sub(cpv.sub(centrum, v1), v2)
corner4 = cpv.add(cpv.sub(centrum, v1), v2)
else:
corner1 = cpv.add(cpv.add(centrum, v1), v2)
def calculateNewPoint(p1, p2, distance):
v1 = cpv.normalize(cpv.sub(p1, p2))
return cpv.add(p1, cpv.scale(v1, distance))
def _vec_sum(vec_list):
# this is the same as
# return numpy.array(vec_list).sum(0).tolist()
vec = cpv.get_null()
for x in vec_list:
vec = cpv.add(vec, x)
return vec