def updatePlanFrames(self): if self.getViewMode() != "frames": return numberOfSamples = self.getNumberOfSamples() meshes = self.planPlayback.getPlanPoseMeshes( self.plan, self.playbackJointController, self.playbackRobotModel, numberOfSamples, ) d = DebugData() startColor = [0.8, 0.8, 0.8] endColor = [85 / 255.0, 255 / 255.0, 255 / 255.0] colorFunc = scipy.interpolate.interp1d( [0, numberOfSamples - 1], [startColor, endColor], axis=0, kind="slinear" ) for i, mesh in reversed(list(enumerate(meshes))): d.addPolyData(mesh, color=colorFunc(i)) pd = d.getPolyData() clean = vtk.vtkCleanPolyData() clean.SetInput(pd) clean.Update() pd = clean.GetOutput() self.planFramesObj = vis.updatePolyData( d.getPolyData(), "robot plan", alpha=1.0, visible=False, colorByName="RGB255", parent="planning", ) self.showPlanFrames()
def getMergedConvexHullsMesh(chulls): d = DebugData() for i, chull in enumerate(chulls): d.addPolyData(chull.convexHull, color=segmentation.getRandomColor()) return d.getPolyData()