private void registerArtifacts(String name, YoGraphicsListRegistry yoGraphicsListRegistry) { if (yoGraphicsListRegistry != null) { artifactList = new ArtifactList(name + "Balls"); for (YoGraphicPosition yoGraphicPosition : yoGraphicPositions) { artifactList.add(yoGraphicPosition.createArtifact()); } yoGraphicsListRegistry.registerArtifactList(artifactList); } }
public void registerArtifactList(ArtifactList artifactList) { if (alreadyAddedToSimulationConstructionSet) throw new RuntimeException("Graphics have already been added to the SimulationConstructionSet. Cannot register more objects after this."); if (artifactLists.contains(artifactList)) { throw new RuntimeException("Already registered artifactList " + artifactList); } checkForRepeatNames(artifactList); for (ArtifactList list : artifactLists) { if (list.getLabel().equals(artifactList.getLabel())) { // Combine them: list.addAll(artifactList.getArtifacts()); return; } } artifactLists.add(artifactList); }
public void addArtifactListsToPlotter(PlotterInterface plotter) { if (alreadyAddedToPlotter) { throw new RuntimeException("Already added this ArtifactLists To Plotter: " + artifactLists); } if (artifactLists != null) { for (ArtifactList artifactList : artifactLists) { if (artifactList != null) { // YoGraphicCheckBoxMenuItem checkBox = new YoGraphicCheckBoxMenuItem(graphicsList.getLabel(), graphicsList.getYoGraphics()); // yoGraphicMenu.add(checkBox); // add graphics to simulation individually artifactList.addArtifactsToPlotter(plotter); } else System.out.println("ArtifactList is null!"); } } alreadyAddedToPlotter = true; }
private void setupVisualizers(YoGraphicsListRegistry yoGraphicsListRegistry, boolean visualize) { YoGraphicsList yoGraphicsList = new YoGraphicsList(getClass().getSimpleName()); ArtifactList artifactList = new ArtifactList(getClass().getSimpleName()); YoGraphicPosition previousExitCMP = new YoGraphicPosition("previousExitCMP", previousStanceExitCMP, 0.01, YoAppearance.Red(), GraphicType.SQUARE); YoGraphicPosition entryCMP = new YoGraphicPosition("entryCMP", stanceEntryCMP, 0.01, YoAppearance.Red(), GraphicType.SQUARE); YoGraphicPosition exitCMP = new YoGraphicPosition("exitCMP", stanceExitCMP, 0.01, YoAppearance.Red(), GraphicType.SQUARE); YoGraphicPosition finalICP = new YoGraphicPosition("finalICP", this.finalICP, 0.005, YoAppearance.Black(), GraphicType.SOLID_BALL); yoGraphicsList.add(finalICP); artifactList.add(previousExitCMP.createArtifact()); artifactList.add(entryCMP.createArtifact()); artifactList.add(exitCMP.createArtifact()); artifactList.add(finalICP.createArtifact()); artifactList.setVisible(visualize); yoGraphicsList.setVisible(visualize); yoGraphicsListRegistry.registerYoGraphicsList(yoGraphicsList); yoGraphicsListRegistry.registerArtifactList(artifactList); }
public void registerArtifact(String listName, Artifact artifact) { ArtifactList list = new ArtifactList(listName, artifact); registerArtifactList(list); }
@ContinuousIntegrationTest(estimatedDuration = 0.1) @Test(timeout = 30000) public void testVisualization() { YoGraphicsList dummyGraphicsList = new YoGraphicsList("DummyGraphics"); ArtifactList dummyArtifactList = new ArtifactList("DummyArtifacts"); copPointsInFoot.setupVisualizers(dummyGraphicsList, dummyArtifactList, 0.05); assertEquals(dummyArtifactList.getArtifacts().size(), 10); assertEquals(dummyGraphicsList.getYoGraphics().size(), 10); copPointsInFoot.addWaypoint(CoPPointName.MIDFOOT_COP, 1.0, new FramePoint3D(footSpoof.getSoleFrame(), 1.0, 2.1, 3.1)); YoGraphicPosition graphic = (YoGraphicPosition) dummyGraphicsList.getYoGraphics().get(0); assertEquals(1.0 - xToAnkle, graphic.getX(), 1e-5); assertEquals(2.1 - yToAnkle, graphic.getY(), 1e-5); assertEquals(3.1 - zToAnkle, graphic.getZ(), 1e-5); }
private boolean doesNameExistInArtifactLists(String nameToCheck) { for (ArtifactList artifactList : artifactLists) { ArrayList<Artifact> artifacts = artifactList.getArtifacts(); for (Artifact artifact : artifacts) { String name = artifact.getID(); if (name.equals(nameToCheck)) { return true; } } } return false; }
private static void showPlotterAndSleep(ArtifactList artifacts) { Plotter plotter = new Plotter(); plotter.setViewRange(2.0); artifacts.setVisible(true); JFrame frame = new JFrame("PolygonWigglingTest"); Dimension preferredSize = new Dimension(600, 600); frame.setPreferredSize(preferredSize); frame.add(plotter.getJPanel(), BorderLayout.CENTER); frame.setSize(preferredSize); frame.setVisible(true); artifacts.addArtifactsToPlotter(plotter); ThreadTools.sleepForever(); }
private void addPolygonToArtifacts(String name, ConvexPolygon2D polygon, Color color) { YoFrameConvexPolygon2D yoPlanePolygon = new YoFrameConvexPolygon2D(name + "Polygon", worldFrame, 10, registry); artifacts.add(new YoArtifactPolygon(name, yoPlanePolygon , color, false)); yoPlanePolygon.set(polygon); }
for (ArtifactList artifactList : artifactLists) artifactList.setVisible(true);
private void updateLabels(ArrayList<Artifact> artifacts) { for (Artifact artifact : artifacts) { updateLabel(artifact); } }
public void hideArtifacts() { int numberOfElements = artifactLists.size(); for (int i = 0; i < numberOfElements; i++) { ArtifactList artifactList = artifactLists.get(i); artifactList.hideArtifacts(); } }
private void setupVisualizers(YoGraphicsListRegistry yoGraphicsListRegistry) { YoGraphicsList yoGraphicsList = new YoGraphicsList(getClass().getSimpleName()); ArtifactList artifactList = new ArtifactList(getClass().getSimpleName()); referenceCMPsCalculator.createVisualizerForConstantCMPs(yoGraphicsList, artifactList); for (int i = 0; i < numberFootstepsToConsider.getIntegerValue() - 1; i++) { YoGraphicPosition icpEarlyCornerPointsViz = new YoGraphicPosition("EntryCornerPoints" + i, entryCornerPoints.get(i).buildUpdatedYoFramePointForVisualizationOnly(), ICP_CORNER_POINT_SIZE, YoAppearance.Blue(), GraphicType.SOLID_BALL); yoGraphicsList.add(icpEarlyCornerPointsViz); artifactList.add(icpEarlyCornerPointsViz.createArtifact()); YoGraphicPosition lateCornerPointsViz = new YoGraphicPosition("ExitCornerPoints" + i, exitCornerPoints.get(i).buildUpdatedYoFramePointForVisualizationOnly(), ICP_CORNER_POINT_SIZE, YoAppearance.Blue(), GraphicType.BALL); yoGraphicsList.add(lateCornerPointsViz); artifactList.add(lateCornerPointsViz.createArtifact()); } YoGraphicPosition singleSupportInitialICPViz = new YoGraphicPosition("singleSupportInitialICP", singleSupportInitialICP.buildUpdatedYoFramePointForVisualizationOnly(), 0.004, YoAppearance.Chocolate(), GraphicType.SOLID_BALL); yoGraphicsList.add(singleSupportInitialICPViz); artifactList.add(singleSupportInitialICPViz.createArtifact()); YoGraphicPosition singleSupportFinalICPViz = new YoGraphicPosition("singleSupportFinalICP", singleSupportFinalICP.buildUpdatedYoFramePointForVisualizationOnly(), 0.004, YoAppearance.Chocolate(), GraphicType.BALL); yoGraphicsList.add(singleSupportFinalICPViz); artifactList.add(singleSupportFinalICPViz.createArtifact()); icpSingleSupportTrajectoryGenerator.createVisualizers(yoGraphicsList, artifactList); artifactList.setVisible(VISUALIZE); yoGraphicsList.setVisible(VISUALIZE); yoGraphicsListRegistry.registerYoGraphicsList(yoGraphicsList); yoGraphicsListRegistry.registerArtifactList(artifactList); }
public void registerArtifacts(String listName, Artifact[] artifacts) { ArtifactList list = new ArtifactList(listName, artifacts); registerArtifactList(list); }
private boolean doesNameExistInArtifactLists(String nameToCheck) { for (ArtifactList artifactList : artifactLists) { ArrayList<Artifact> artifacts = artifactList.getArtifacts(); for (Artifact artifact : artifacts) { String name = artifact.getID(); if (name.equals(nameToCheck)) { return true; } } } return false; }
public void createVisualizerForConstantCMPs(YoGraphicsList yoGraphicsList, ArtifactList artifactList) { for (int i = 0; i < entryCMPs.size(); i++) { YoGraphicPosition entryCMPViz = new YoGraphicPosition("Entry CMP" + i, entryCMPsInWorldFrameReadOnly.get(i), CMP_POINT_SIZE, YoAppearance.Green(), GraphicType.SOLID_BALL); yoGraphicsList.add(entryCMPViz); artifactList.add(entryCMPViz.createArtifact()); } for (int i = 0; i < exitCMPs.size(); i++) { YoGraphicPosition exitCMPViz = new YoGraphicPosition("Exit CMP" + i, exitCMPsInWorldFrameReadOnly.get(i), CMP_POINT_SIZE, YoAppearance.Green(), GraphicType.BALL); yoGraphicsList.add(exitCMPViz); artifactList.add(exitCMPViz.createArtifact()); } }
for (ArtifactList artifactList : artifactLists) artifactList.setVisible(true);
private void updateLabels(ArrayList<Artifact> artifacts) { for (Artifact artifact : artifacts) { updateLabel(artifact); } }
public void hideArtifacts() { int numberOfElements = artifactLists.size(); for (int i = 0; i < numberOfElements; i++) { ArtifactList artifactList = artifactLists.get(i); artifactList.hideArtifacts(); } }
ArtifactList artifacts = new ArtifactList(label); artifacts.add(new YoArtifactPolygon("Safe Area", yoSafeArea, Color.GREEN, false)); artifacts.add(new YoArtifactPolygon("Safe CMP Area", yoSafeCMPArea, Color.CYAN, false)); artifacts.add(new YoArtifactPosition("Capture Point For Momentum", yoCapturePoint.getYoX(), yoCapturePoint.getYoY(), GraphicType.BALL, Color.BLUE, 0.01)); artifacts.add(new YoArtifactPolygon("Projection Area", yoProjectionArea, Color.BLUE, false)); artifacts.setVisible(showVizByDefault); yoGraphicsListRegistry.registerArtifactList(artifacts);