FME Geometry, PythonCaller, GenerativeArt

#main_script import fmeobjects import numpy as np from fmeobjects import FMELine, FMEPoint, FMEPolygon from scipy.spatial import Delaunay """ triangulation from star polygon vertices where each vertex i connects to (i+k) % n. """ def star_polygon(n, k, r=1.0): pts = [(r*np.cos(2*np.pi*i/n), r*np.sin(2*np.pi*i/n)) for i in range(n)] path, i = [], 0 while not path or i != 0: path.append(pts[i]) i = (i + k) % n return path + [path[0]] class FeatureProcessor(object): def __init__(self): pass def input(self, feature: fmeobjects.FMEFeature): start_point = np.array([10,15]) trianguline = star_polygon(7, 2) pts = trianguline pline_input = list(map(tuple, trianguline)) line1 = FMELine(pline_input) feature.setGeometry(line1) self.pyoutput(feature) tri = Delaunay(pts) for simplex in tri.simplices: triangle_pts = simplex pline_input = list(map(tuple, triangle_pts)) line1 = FMELine(pline_input) polygon = FMEPolygon(line1) feature.setGeometry(polygon) self.pyoutput(feature) """ start_point = np.array([10,10]) #trianguline = triangle_row(start_point, 10, 5) trianguline = triangle_row2(start_point, 11, 1, 3,1) pline_input = list(map(tuple, trianguline)) line1 = FMELine(pline_input) feature.setGeometry(line1) self.pyoutput(feature) """