diff --git a/src/main/java/org/ntlab/acanthus_server/entities/Position.java b/src/main/java/org/ntlab/acanthus_server/entities/Position.java index d1c638d..c1004e2 100644 --- a/src/main/java/org/ntlab/acanthus_server/entities/Position.java +++ b/src/main/java/org/ntlab/acanthus_server/entities/Position.java @@ -9,6 +9,7 @@ public class Position { private float x; private float y; + private int strokeNo; public float getX() { return x; @@ -16,10 +17,18 @@ public float getY() { return y; } + public int StrokeNo() { + return strokeNo; + } public void setXY(float x, float y) { this.x = x; this.y = y; } + public void setStrokeNo(int strokeNo) { + this.strokeNo = strokeNo; + System.out.println(this.strokeNo); + } + } diff --git a/src/main/java/org/ntlab/acanthus_server/entities/Stroke.java b/src/main/java/org/ntlab/acanthus_server/entities/Stroke.java index af314c4..d3c350a 100644 --- a/src/main/java/org/ntlab/acanthus_server/entities/Stroke.java +++ b/src/main/java/org/ntlab/acanthus_server/entities/Stroke.java @@ -7,7 +7,7 @@ public class Stroke { private static int strokeNoCount; //strokeNoを数えるためだけ - private int strokeNo; + private int strokeNo = 0; private int pen; private int color; private int thickness; @@ -31,8 +31,8 @@ //書き始めたらstrokeNoを追加する。 public void addStrokeNo(){ - strokeNoCount++; this.strokeNo = strokeNoCount; + strokeNoCount++; } public void addStrokes(int pen, int color, int thickness) { @@ -41,8 +41,8 @@ this.thickness = thickness; } - public void addPosition(ArrayList positions) { - this.positions = positions; + public void addPosition(Position positions) { + this.positions.add(positions); } } diff --git a/src/main/java/org/ntlab/acanthus_server/resources/gallery/StrokesRest.java b/src/main/java/org/ntlab/acanthus_server/resources/gallery/StrokesRest.java index 3714886..8951c51 100644 --- a/src/main/java/org/ntlab/acanthus_server/resources/gallery/StrokesRest.java +++ b/src/main/java/org/ntlab/acanthus_server/resources/gallery/StrokesRest.java @@ -54,11 +54,17 @@ public void addStrokes(@PathParam("aid") Integer aid, @FormParam("uid") Integer uid, @FormParam("uidToken") Integer uidToken, @FormParam("pen") Integer pen, @FormParam("color") Integer color, @FormParam("thick") Integer thick) { var animation = gallery.getAnimationInformation(aid); - Stroke Test = new Stroke(); - Test.addStrokes(pen, color, thick); - Test.addStrokeNo();//strokeNoを+1する - Test.addPosition(this.positions); - this.strokes.add(Test); + Stroke Stroke = new Stroke(); + Stroke.addStrokes(pen, color, thick); + Stroke.addStrokeNo();//strokeNoを+1する + + for (int i = 0; i < this.positions.size(); i++) { + if (this.positions.get(i).StrokeNo() == Stroke.getStrokeNo()) { + Stroke.addPosition(this.positions.get(i)); + } + } + + this.strokes.add(Stroke); // if(animation != null) { // this.Test.setStrokes(pen, color, thick); // }else{ @@ -97,12 +103,15 @@ public void addPositions(@PathParam("aid") Integer aid, @PathParam("strokeNo") Integer strokeNo, @FormParam("x") Float x, @FormParam("y") Float y) { var animation = gallery.getAnimationInformation(aid); -// Stroke stroke = strokes.get(strokeNo); - Position position = new Position(); - position.setXY(x, y); + + Position Position = new Position(); + + Position.setStrokeNo(strokeNo); + + Position.setXY(x, y); // stroke.addPosition(Position); - this.positions.add(position); + this.positions.add(Position); // if(animation != null) { // this.Position.setXY(x, y); // this.positions.add(this.Position);