Java Code Examples for java.awt.Point#getX()
The following examples show how to use
java.awt.Point#getX() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: MindMapPanel.java From netbeans-mmd-plugin with Apache License 2.0 | 8 votes |
private int calcDropPosition(@Nonnull final AbstractElement destination, @Nonnull final Point dropPoint) { final int result; if (destination.getClass() == ElementRoot.class) { result = dropPoint.getX() < destination.getBounds().getCenterX() ? DRAG_POSITION_LEFT : DRAG_POSITION_RIGHT; } else { final boolean destinationIsLeft = destination.isLeftDirection(); final Rectangle2D bounds = destination.getBounds(); final double edgeOffset = bounds.getWidth() * 0.2d; if (dropPoint.getX() >= (bounds.getX() + edgeOffset) && dropPoint.getX() <= (bounds.getMaxX() - edgeOffset)) { result = dropPoint.getY() < bounds.getCenterY() ? DRAG_POSITION_TOP : DRAG_POSITION_BOTTOM; } else if (destinationIsLeft) { result = dropPoint.getX() < bounds.getCenterX() ? DRAG_POSITION_LEFT : DRAG_POSITION_UNKNOWN; } else { result = dropPoint.getX() > bounds.getCenterX() ? DRAG_POSITION_RIGHT : DRAG_POSITION_UNKNOWN; } } return result; }
Example 2
Source File: GraphPanel.java From chipster with MIT License | 6 votes |
/** * Zooms out. */ private void zoomOutToolUsed() { if (this.setGraphScale(graph.getScale() / this.ZOOM_FACTOR)) { JViewport view = this.getScroller().getViewport(); Point viewPos = view.getViewPosition(); center = new Point((int) (viewPos.getX() + view.getWidth() / 2), (int) (viewPos.getY() + view.getHeight() / 2)); center.x = (int) (center.getX() / this.ZOOM_FACTOR); center.y = (int) (center.getY() / this.ZOOM_FACTOR); updateGridSize(); this.pointToCenter(center); } this.repaint(); this.getScroller().repaint(); graph.repaint(); }
Example 3
Source File: AbstractElement.java From netbeans-mmd-plugin with Apache License 2.0 | 6 votes |
@Nonnull public ElementPart findPartForPoint(@Nonnull final Point point) { ElementPart result = ElementPart.NONE; if (this.bounds.contains(point)) { final double offX = point.getX() - this.bounds.getX(); final double offY = point.getY() - this.bounds.getY(); result = ElementPart.AREA; if (this.visualAttributeImageBlock.getBounds().contains(offX, offY)) { result = ElementPart.VISUAL_ATTRIBUTES; } else { if (this.textBlock.getBounds().contains(offX, offY)) { result = ElementPart.TEXT; } else if (this.extrasIconBlock.getBounds().contains(offX, offY)) { result = ElementPart.ICONS; } } } return result; }
Example 4
Source File: AnnotationAction.java From PIPE with MIT License | 5 votes |
/** * Creates a new annotation. * * @param point top left x,y location of the annotation * @param petriNetController controller for the Petri net this annotation is being added to. * @return newly created action at the specified point */ private Annotation getAnnotation(Point point, PetriNetController petriNetController) { int x = (int) point.getX(); int y = (int) point.getY(); Annotation annotation = new AnnotationImpl(x, y, "Enter text here", WIDTH, HEIGHT, true); PetriNet petriNet = petriNetController.getPetriNet(); petriNet.addAnnotation(annotation); return annotation; }
Example 5
Source File: PopupManager.java From netcdf-java with BSD 3-Clause "New" or "Revised" License | 5 votes |
public void show(String text, Point p, Component owner, Object forWho) { if (isShowing && (showing == forWho)) { return; } if (isShowing) { popup.hide(); } isShowing = true; showing = forWho; sbuff.setLength(0); sbuff.append("<html><body>"); String textSubbed = CharMatcher.is('\n').replaceFrom(text, "<br>"); sbuff.append(textSubbed); sbuff.append("</body></html>"); info.setText(sbuff.toString()); SwingUtilities.convertPointToScreen(p, owner); int x = (int) (p.getX()); int y = (int) (p.getY()); popup = factory.getPopup(owner, main, x + 5, y + 5); // LOOK 1.4 if (popup != null) { popup.show(); } }
Example 6
Source File: MapModel2D.java From MikuMikuStudio with BSD 2-Clause "Simplified" License | 5 votes |
/** * Converts a pixel position into a mercator position * @param p {@Point} object that you wish to convert into * longitude / latiude * @return the converted {@code Position} object * @since 1.0 */ public Position toPosition(Point p) { double lat, lon; Position pos = null; try { Point pixelCentre = toPixel(new Position(0, 0)); // Get the distance between position and the centre double xDistance = distance(xCentre, p.getX()); double yDistance = distance(pixelCentre.getY(), p.getY()); double lonDistanceInDegrees = (xDistance * minutesPerPixel) / 60; double mp = (yDistance * minutesPerPixel); // If we are zoomed in past a certain point, then use linear search. // Otherwise use binary search if (getMinutesPerPixel() < 0.05) { lat = findLat(mp, getCentre().getLatitude()); if (lat == -1000) { System.out.println("lat: " + lat); } } else { lat = findLat(mp, 0.0, 85.0); } lon = (p.getX() < xCentre ? centre.getLongitude() - lonDistanceInDegrees : centre.getLongitude() + lonDistanceInDegrees); if (p.getY() > pixelCentre.getY()) { lat = -1 * lat; } if (lat == -1000 || lon == -1000) { return pos; } pos = new Position(lat, lon); } catch (InvalidPositionException ipe) { ipe.printStackTrace(); } return pos; }
Example 7
Source File: SelectionManagerTest.java From PIPE with MIT License | 5 votes |
@Test public void selectsUsingLocationOnMousePress() { MouseEvent e = mock(MouseEvent.class); when(e.getButton()).thenReturn(MouseEvent.BUTTON1); when(e.isControlDown()).thenReturn(false); Point clickPoint = new Point(50, 50); when(e.getPoint()).thenReturn(clickPoint); manager.mousePressed(e); int x = (int) clickPoint.getX(); int y = (int) clickPoint.getY(); Rectangle rect = new Rectangle(x, y, 0, 0); verify(mockController).select(rect); }
Example 8
Source File: OperatorInfoBubble.java From rapidminer-studio with GNU Affero General Public License v3.0 | 5 votes |
@Override protected Point getObjectLocation() { // get all necessary parameters if (!getDockable().getComponent().isShowing()) { return new Point(0, 0); } Point rendererLoc = renderer.getVisibleRect().getLocation(); Rectangle2D targetRect = renderer.getModel().getOperatorRect(operator); if (targetRect == null) { return rendererLoc; } Point loc = new Point((int) targetRect.getX(), (int) targetRect.getY()); loc.x = (int) (loc.x * renderer.getModel().getZoomFactor()); loc.y = (int) (loc.y * renderer.getModel().getZoomFactor()); loc = ProcessDrawUtils.convertToAbsoluteProcessPoint(loc, renderer.getModel().getProcessIndex(operator.getExecutionUnit()), renderer.getModel()); if (loc == null) { return rendererLoc; } if (!viewport.isShowing()) { return new Point(0, 0); } // calculate actual on screen loc of the operator and return it Point absoluteLoc = new Point((int) (viewport.getLocationOnScreen().x + (loc.getX() - rendererLoc.getX())), (int) (viewport.getLocationOnScreen().y + (loc.getY() - rendererLoc.getY()))); // return validated Point return this.validatePointForBubbleInViewport(absoluteLoc); }
Example 9
Source File: FruchtermanReingoldLayout.java From netbeans with Apache License 2.0 | 5 votes |
private void relayoutNonFixed(NodeWidget w) { Point masterPoint = new Point(); masterPoint.setLocation(w.locX, w.locY); double r; double theta; double thetaStep = Math.PI / 5; r = 30; theta = 0; w.setFixed(false); while (true) { AffineTransform tr = AffineTransform.getRotateInstance(theta); Point2D d2point = tr.transform(new Point2D.Double(0, r), null); Point point = new Point((int)d2point.getX() + masterPoint.x, (int)d2point.getY() + masterPoint.y); w.locX = point.getX(); w.locY = point.getY(); if (isThereFreeSpaceNonFixedSpace(w)) { w.setFixed(true); return; } theta = theta + thetaStep; if (theta > (Math.PI * 2 - Math.PI / 10)) { r = r + 30; theta = theta - Math.PI * 2; thetaStep = thetaStep * 3 / 4; } } }
Example 10
Source File: FastCopyMainForm.java From FastCopy with Apache License 2.0 | 5 votes |
public void init() { frame = new JFrame("MHISoft FastCopy " + UI.version); frame.setContentPane(layoutPanel1); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //progressBar1.setVisible(false); progressBar1.setMaximum(100); progressBar1.setMinimum(0); progressPanel.setVisible(false); //frame.setPreferredSize(new Dimension(1200, 800)); frame.setPreferredSize(new Dimension(UserPreference.getInstance().getDimensionX(), UserPreference.getInstance().getDimensionY())); frame.pack(); /*position it*/ //frame.setLocationRelativeTo(null); // *** this will center your app *** PointerInfo a = MouseInfo.getPointerInfo(); Point b = a.getLocation(); int x = (int) b.getX(); int y = (int) b.getY(); frame.setLocation(x + 100, y); btnHelp.setBorder(null); frame.setVisible(true); componentsList = ViewHelper.getAllComponents(frame); setupFontSpinner(); ViewHelper.setFontSize(componentsList, UserPreference.getInstance().getFontSize()); }
Example 11
Source File: JavaElementPropertyAccessor.java From marathonv5 with Apache License 2.0 | 5 votes |
public String getPrecedingLabel() { Container container = component.getParent(); if (container == null) { return null; } List<Component> allComponents = findAllComponents(); // Find labels in the same row (LTR) // In the same row: labelx < componentx, labely >= componenty Point locComponent = component.getLocationOnScreen(); List<Component> rowLeft = new ArrayList<Component>(); for (Component label : allComponents) { Point locLabel = label.getLocationOnScreen(); if (!(label instanceof JPanel) && locLabel.getX() < locComponent.getX() && locLabel.getY() >= locComponent.getY() && locLabel.getY() <= locComponent.getY() + component.getHeight() && !(label instanceof Filler)) { rowLeft.add(label); } } Collections.sort(rowLeft, new Comparator<Component>() { @Override public int compare(Component o1, Component o2) { Point locO1 = o1.getLocationOnScreen(); Point locO2 = o2.getLocationOnScreen(); return (int) (locO1.getX() - locO2.getX()); } }); if (rowLeft.size() > 0 && rowLeft.get(rowLeft.size() - 1) instanceof JLabel) { return stripLastColon(((JLabel) rowLeft.get(rowLeft.size() - 1)).getText().trim()); } return null; }
Example 12
Source File: AbstractChartPanel.java From rapidminer-studio with GNU Affero General Public License v3.0 | 5 votes |
/** * Translates a panel (component) location to a Java2D point. * * @param screenPoint * the screen location (<code>null</code> not permitted). * * @return The Java2D coordinates. */ @Override public Point2D translateScreenToJava2D(Point screenPoint) { Insets insets = getInsets(); double x = (screenPoint.getX() - insets.left) / this.scaleX; double y = (screenPoint.getY() - insets.top) / this.scaleY; return new Point2D.Double(x, y); }
Example 13
Source File: WedgesBuilder.java From audiveris with GNU Affero General Public License v3.0 | 5 votes |
/** * Wedges look like "hair pins", composed of two converging lines. * <p> * The pair of lines of a wedge are of similar length (short or long) and rather horizontal. * By comparison, ending lines are isolated, long and strictly horizontal. */ public void buildWedges () { // Use an area on left end of a segment and look for compatible segments // Do the same on right end of segments List<SegmentInter> segments = curves.getSegments(); for (final boolean rev : new boolean[]{true, false}) { Collections.sort(segments, rev ? Inters.byAbscissa : Inters.byRightAbscissa); for (int index = 0; index < segments.size(); index++) { SegmentInter s1 = segments.get(index); // Define the lookup area Rectangle area = getArea(s1.getInfo(), rev); double xMax = area.getMaxX(); for (SegmentInter s2 : segments.subList(index + 1, segments.size())) { Point sEnd = s2.getInfo().getEnd(rev); if (area.contains(sEnd)) { // Check compatibility GradeImpacts impacts = computeImpacts(s1, s2, rev); if ((impacts != null) && (impacts.getGrade() >= WedgeInter.getMinGrade())) { createWedgeInter(s1, s2, rev, impacts); segments.remove(s1); segments.remove(s2); index--; break; } } else if (sEnd.getX() > xMax) { break; // Since list is sorted by abscissa } } } } }
Example 14
Source File: ProcessRendererMouseHandler.java From rapidminer-studio with GNU Affero General Public License v3.0 | 4 votes |
/** * Updates the currently hovered element * * @param e */ private void updateHoveringState(final MouseEvent e) { int hoveringProcessIndex = model.getHoveringProcessIndex(); if (hoveringProcessIndex != -1) { ExecutionUnit hoveringProcess = model.getProcess(hoveringProcessIndex); Point relativeMousePosition = model.getMousePositionRelativeToProcess(); int relativeX = (int) relativeMousePosition.getX(); int relativeY = (int) relativeMousePosition.getY(); OutputPort connectionSourceUnderMouse = controller.getPortForConnectorNear(relativeMousePosition, hoveringProcess); if (connectionSourceUnderMouse != model.getHoveringConnectionSource()) { model.setHoveringConnectionSource(connectionSourceUnderMouse); model.fireMiscChanged(); e.consume(); } // find inner sinks/sources under mouse if (controller.checkPortUnder(hoveringProcess.getInnerSinks(), relativeX, relativeY) || controller.checkPortUnder(hoveringProcess.getInnerSources(), relativeX, relativeY)) { e.consume(); return; } // find operator under mouse List<Operator> operators = hoveringProcess.getOperators(); List<Operator> selectedOperators = model.getSelectedOperators(); // if there are selected operators, they take precedence if (!operators.isEmpty() && !selectedOperators.isEmpty()) { operators = new ArrayList<>(operators); operators.sort((o1, o2) -> { int index1 = selectedOperators.indexOf(o1); int index2 = selectedOperators.indexOf(o2); if (index1 == index2) { return 0; } if (index1 == -1) { return -1; } if (index2 == -1) { return 1; } return index2 - index1; }); } ListIterator<Operator> iterator = operators.listIterator(operators.size()); while (iterator.hasPrevious()) { Operator op = iterator.previous(); // first, check whether we are over a port if (controller.checkPortUnder(op.getInputPorts(), relativeX, relativeY) || controller.checkPortUnder(op.getOutputPorts(), relativeX, relativeY)) { e.consume(); return; } // If not, check operator. Rectangle2D rect = model.getOperatorRect(op); if (rect == null) { continue; } if (rect.contains(relativeMousePosition)) { if (model.getHoveringOperator() != op) { model.setHoveringPort(null); view.setHoveringOperator(op); if (model.getConnectingPortSource() == null) { if (model.getHoveringOperator() instanceof OperatorChain) { controller.showStatus(I18N.getGUILabel("processRenderer.displayChain.hover")); } else { controller.showStatus(I18N.getGUILabel("processRenderer.operator.hover")); } } else { controller.showStatus(I18N.getGUILabel("processRenderer.connection.hover_cancel")); } } view.updateCursor(); e.consume(); return; } } } if (model.getHoveringOperator() != null) { view.setHoveringOperator(null); } if (model.getHoveringPort() != null) { model.setHoveringPort(null); view.updateCursor(); model.fireMiscChanged(); } if (model.getHoveringConnectionSource() != null && model.getConnectingPortSource() == null) { controller.showStatus(I18N.getGUILabel("processRenderer.connection.hover")); } else if (model.getConnectingPortSource() != null) { controller.showStatus(I18N.getGUILabel("processRenderer.connection.hover_cancel")); } else { controller.clearStatus(); } }
Example 15
Source File: ConstructionWizard.java From mars-sim with GNU General Public License v3.0 | 4 votes |
@SuppressWarnings("restriction") public synchronized void confirmSiteLocation(ConstructionSite site, ConstructionManager constructionManager, boolean isAtPreDefinedLocation, ConstructionStageInfo stageInfo, int constructionSkill) { //System.out.println("ConstructionWizard : entering confirmSiteLocation()"); // Determine location and facing for the new building. double xLoc = site.getXLocation(); double yLoc = site.getYLocation(); double scale = mapPanel.getScale(); Settlement currentS = settlementWindow.getMapPanel().getSettlement(); if (currentS != constructionManager.getSettlement()) { if (mainScene != null) { mainScene.setSettlement(constructionManager.getSettlement()); } else { //desktop.openToolWindow(SettlementWindow.NAME); settlementWindow.getMapPanel().getSettlementTransparentPanel().getSettlementListBox() .setSelectedItem(constructionManager.getSettlement()); } } // set up the Settlement Map Tool to display the suggested location of the building mapPanel.reCenter(); mapPanel.moveCenter(xLoc*scale, yLoc*scale); //mapPanel.setShowConstructionLabels(true); //mapPanel.getSettlementTransparentPanel().getConstructionLabelMenuItem().setSelected(true); String header = null; String title = null; String message = "(1) Will default to \"Yes\" in 90 secs unless timer is cancelled." + " (2) To manually place a site, click on \"Use Mouse\" button."; StringProperty msg = new SimpleStringProperty(message); String name = null; if (stageInfo != null) { name = stageInfo.getName(); title = "A New " + Conversion.capitalize(stageInfo.getName()).replace(" X ", " x ") + " at " + constructionManager.getSettlement(); // stageInfo.getType() is less descriptive than stageInfo.getName() } else { name = site.getName(); title = "A New " + Conversion.capitalize(site.getName()).replace(" X ", " x ") + " at " + constructionManager.getSettlement(); } if (isAtPreDefinedLocation) { header = "Would you like to place the " + name + " at its default position? "; } else { header = "Would you like to place the " + name + " at this position? "; } if (mainScene != null) { alertDialog(title, header, msg, constructionManager, site, true, stageInfo, constructionSkill); } else { desktop.openAnnouncementWindow("Pause for Construction Wizard"); AnnouncementWindow aw = desktop.getAnnouncementWindow(); Point location = MouseInfo.getPointerInfo().getLocation(); double Xloc = location.getX() - aw.getWidth() * 2; double Yloc = location.getY() - aw.getHeight() * 2; aw.setLocation((int)Xloc, (int)Yloc); int reply = JOptionPane.showConfirmDialog(aw, header, TITLE, JOptionPane.YES_NO_OPTION); //repaint(); if (reply == JOptionPane.YES_OPTION) { logger.info("The construction site is set"); } else { //constructionManager.removeConstructionSite(site); //site = new ConstructionSite(); site = positionNewSite(site);//, constructionSkill); confirmSiteLocation(site, constructionManager, false, stageInfo, constructionSkill); } desktop.disposeAnnouncementWindow(); } }
Example 16
Source File: VirtualBall.java From procamtracker with GNU General Public License v2.0 | 4 votes |
public void setInitialVelocity(Point initialVelocity) { this.initialVelocity = new double[] { initialVelocity.getX(), initialVelocity.getY() }; }
Example 17
Source File: JColorPickerPanel.java From pumpernickel with MIT License | 4 votes |
/** * Returns the color at the indicated point in HSB values. * * @param p * a point relative to this panel. * @return the HSB values at the point provided. */ public float[] getHSB(Point p) { if (mode == JColorPicker.RED || mode == JColorPicker.GREEN || mode == JColorPicker.BLUE) { int[] rgb = getRGB(p); float[] hsb = Color.RGBtoHSB(rgb[0], rgb[1], rgb[2], null); return hsb; } int size = Math.min(MAX_SIZE, Math.min(getWidth() - imagePadding.left - imagePadding.right, getHeight() - imagePadding.top - imagePadding.bottom)); p.translate(-(getWidth() / 2 - size / 2), -(getHeight() / 2 - size / 2)); if (mode == JColorPicker.BRI || mode == JColorPicker.SAT) { // the two circular views: double radius = (size) / 2.0; double x = p.getX() - size / 2.0; double y = p.getY() - size / 2.0; double r = Math.sqrt(x * x + y * y) / radius; double theta = Math.atan2(y, x) / (Math.PI * 2.0); if (r > 1) r = 1; if (mode == JColorPicker.BRI) { return new float[] { (float) (theta + .25f), (float) (r), bri }; } else { return new float[] { (float) (theta + .25f), sat, (float) (r) }; } } else { float s = ((float) p.x) / ((float) size); float b = ((float) p.y) / ((float) size); if (s < 0) s = 0; if (s > 1) s = 1; if (b < 0) b = 0; if (b > 1) b = 1; return new float[] { hue, s, b }; } }
Example 18
Source File: ProcessRendererView.java From rapidminer-studio with GNU Affero General Public License v3.0 | 3 votes |
/** * Converts a {@link Point view point} to a point relative to the specified process. * * @param p * the original point * @param processIndex * the index of the process * @return the relative point or {@code null} if no process exists for the specified index * @see ProcessRendererView#fromProcessSpace(Point, int) */ public Point toProcessSpace(final Point p, final int processIndex) { if (processIndex == -1 || processIndex >= model.getProcesses().size()) { return null; } int xOffset = getXOffset(processIndex); double zoomFactor = model.getZoomFactor(); return new Point((int) ((p.getX() - xOffset) * (1 / zoomFactor)), (int) (p.getY() * (1 / zoomFactor))); }
Example 19
Source File: ChartPanel.java From SIMVA-SoS with Apache License 2.0 | 3 votes |
/** * Translates a panel (component) location to a Java2D point. * * @param screenPoint the screen location (<code>null</code> not * permitted). * * @return The Java2D coordinates. */ public Point2D translateScreenToJava2D(Point screenPoint) { Insets insets = getInsets(); double x = (screenPoint.getX() - insets.left) / this.scaleX; double y = (screenPoint.getY() - insets.top) / this.scaleY; return new Point2D.Double(x, y); }
Example 20
Source File: SplitArcAction.java From PIPE with MIT License | 2 votes |
/** * * @param arcController arc controller * @param mousePoint point at which to split the arc */ public SplitArcAction(ArcController<? extends Connectable, ? extends Connectable> arcController, Point mousePoint) { this.arcController = arcController; point = new Point2D.Double(mousePoint.getX(), mousePoint.getY()); }