use of net.sf.latexdraw.models.interfaces.shape.IPoint in project latexdraw by arnobl.
the class LShapeFactory method createBezierCurveFrom.
@Override
public IBezierCurve createBezierCurveFrom(final IBezierCurve bc, final IPoint pointToAdd) {
if (bc == null || !MathUtils.INST.isValidPt(pointToAdd))
return null;
final List<IPoint> pts = new ArrayList<>(bc.getPoints());
final List<IPoint> ptsCtrl = new ArrayList<>(bc.getFirstCtrlPts());
pts.add(pointToAdd);
ptsCtrl.add(createPoint(pointToAdd.getX(), pointToAdd.getY() + IBezierCurve.DEFAULT_POSITION_CTRL));
final IBezierCurve copy = new LBezierCurve(pts, ptsCtrl);
copy.copy(bc);
return copy;
}
use of net.sf.latexdraw.models.interfaces.shape.IPoint in project latexdraw by arnobl.
the class LShapeFactory method createFreeHandFrom.
@Override
public IFreehand createFreeHandFrom(final IFreehand sh, final IPoint pointToAdd) {
if (sh == null || !MathUtils.INST.isValidPt(pointToAdd))
return null;
final List<IPoint> pts = new ArrayList<>(sh.getPoints());
pts.add(pointToAdd);
final IFreehand copy = createFreeHand(pts);
copy.copy(sh);
return copy;
}
use of net.sf.latexdraw.models.interfaces.shape.IPoint in project latexdraw by arnobl.
the class LSquaredShape method setWidth.
@Override
public void setWidth(final double width) {
if (MathUtils.INST.isValidCoord(width) && width > 0) {
final IPoint pt = points.get(points.size() - 1);
final double xPos = pt.getX() + width;
final double yPos = pt.getY() - width;
points.get(1).setX(xPos);
points.get(2).setX(xPos);
points.get(0).setY(yPos);
points.get(1).setY(yPos);
}
}
use of net.sf.latexdraw.models.interfaces.shape.IPoint in project latexdraw by arnobl.
the class ShapeCoordDimCustomiser method update.
@Override
protected void update(final IGroup shape) {
if (shape.isEmpty() || !hand.isActivated()) {
setActivated(false);
} else {
setActivated(true);
final IPoint tl = shape.getTopLeftPoint();
tlxS.getValueFactory().setValue(tl.getX());
tlyS.getValueFactory().setValue(tl.getY());
}
}
use of net.sf.latexdraw.models.interfaces.shape.IPoint in project latexdraw by arnobl.
the class LGroup method setGridStartList.
@Override
public void setGridStartList(final List<IPoint> values) {
if (values != null && values.size() == shapes.size()) {
IntStream.range(0, values.size()).forEach(i -> {
final IShape sh = shapes.get(i);
final IPoint pt = values.get(i);
if (pt != null && sh instanceof IStdGridProp) {
((IStdGridProp) sh).setGridStart(pt.getX(), pt.getY());
}
});
}
}
Aggregations