#main_script
import fmeobjects
import numpy as np
from fmeobjects import FMELine, FMEPoint, FMEPolygon
from math import sqrt, sin, cos, pi, degrees
width = 360
N = 6
d = width / N
class FeatureProcessor(object):
def __init__(self):
pass
def circle(self, tx,ty,radius):
_center_point = FMEPoint()
_center_point.setXYZ(float(tx)+radius/2, float(ty+radius/2), 0)
newFeature = fmeobjects.FMEFeature()
newFeature.setGeometry(_center_point)
_circle = newFeature.buffer(float(radius), 0.0)
self.pyoutput(newFeature)
newFeature = fmeobjects.FMEFeature()
newFeature.setGeometry(_center_point)
_circle = newFeature.buffer(float(radius), 1.0)
self.pyoutput(newFeature)
def pattern(self, size):
for i in range(N):
x = d * i
for j in range(N):
y = d * (j)
pos = (x,y)
poly = self.circle(pos[0], pos[1], float(d/2))
for i in range(N+1):
x = d * (i - 0.5)
for j in range(N+1):
y = d * (j - 0.5)
pos = (x,y)
poly = self.circle(pos[0], pos[1], float(d/2))
def input(self, feature: fmeobjects.FMEFeature):
pass
def close(self):
points = self.pattern(d)