def __init__(self, geometry, view, projection): self.geometry = geometry self.view = view self.projection = projection self.display = True self.worldTranslation = geo2.MatrixIdentity() self.frontPlaneTranslation = geo2.MatrixIdentity()
def __init__(self, fov, front, back, asp): self.minZoomDistance = 0.05 self.maxZoomDistance = 100000.0 self.parentPos = (0.0, 0.0, 0.0) self.localViewMatrix = geo2.MatrixIdentity() self.view = trinity.TriView() self.view.transform = geo2.MatrixIdentity() self.projection = trinity.TriProjection() self.SetPerspective(fov, front, back, asp) self.SetPosition((0.0, 50.0, -100.0)) self.Focus((0.0, 0.0, 0.0))
def __init__(self, name, color=(0.0, 0.0, 0.0, 1.0), primitiveScene=None): object.__init__(self) self.name = name self._color = color self._display = False self.primitiveScene = primitiveScene self.primitives = [] self.valuebindings = [] self.localTransform = geo2.MatrixIdentity()
def ProjectPoint(self, point): viewport = (trinity.device.viewport.x, trinity.device.viewport.y, trinity.device.viewport.width, trinity.device.viewport.height, trinity.device.viewport.minZ, trinity.device.viewport.maxZ) return geo2.Vec3Project(point, viewport, self.projectionMatrix.transform, self.viewMatrix.transform, geo2.MatrixIdentity())
def GetCameraMatrixes(self): if self.cameraMatrixes: return self.cameraMatrixes camera = self.GetCamera() viewPort = (0.0, 0.0, float(uicore.desktop.width), float(uicore.desktop.height), 0, 100000.0) self.cameraMatrixes = (viewPort, camera.projectionMatrix.transform, camera.viewMatrix.transform, geo2.MatrixIdentity()) return self.cameraMatrixes
def ProjectWorldToScreen(self, vec3): cam = self.GetCamera() viewport = (trinity.device.viewport.x, trinity.device.viewport.y, trinity.device.viewport.width, trinity.device.viewport.height, trinity.device.viewport.minZ, trinity.device.viewport.maxZ) x, y, z, w = geo2.Vec3Project(vec3, viewport, cam.projectionMatrix.transform, cam.viewMatrix.transform, geo2.MatrixIdentity()) return (x, y)