diff --git a/imgui-binding/src/generated/java/imgui/ImVec2.java b/imgui-binding/src/generated/java/imgui/ImVec2.java index 923e5bbf..580d2d16 100644 --- a/imgui-binding/src/generated/java/imgui/ImVec2.java +++ b/imgui-binding/src/generated/java/imgui/ImVec2.java @@ -31,9 +31,7 @@ public ImVec2 set(final ImVec2 value) { } public ImVec2 plus(final float x, final float y) { - this.x += x; - this.y += y; - return this; + return new ImVec2(this.x + x, this.y + y); } public ImVec2 plus(final ImVec2 value) { @@ -41,9 +39,7 @@ public ImVec2 plus(final ImVec2 value) { } public ImVec2 minus(final float x, final float y) { - this.x -= x; - this.y -= y; - return this; + return new ImVec2(this.x - x, this.y -y); } public ImVec2 minus(final ImVec2 value) { @@ -51,15 +47,21 @@ public ImVec2 minus(final ImVec2 value) { } public ImVec2 times(final float x, final float y) { - this.x *= x; - this.y *= y; - return this; + return new ImVec2(this.x * x, this.y * y); } public ImVec2 times(final ImVec2 value) { return times(value.x, value.y); } + public ImVec2 div(final float x, final float y) { + return new ImVec2(this.x / x, this.y / y); + } + + public ImVec2 div(final ImVec2 value) { + return div(value.x, value.y); + } + @Override public String toString() { return "ImVec2{" diff --git a/imgui-binding/src/generated/java/imgui/ImVec4.java b/imgui-binding/src/generated/java/imgui/ImVec4.java index 1192eb83..cc7b7951 100644 --- a/imgui-binding/src/generated/java/imgui/ImVec4.java +++ b/imgui-binding/src/generated/java/imgui/ImVec4.java @@ -35,11 +35,7 @@ public ImVec4 set(final ImVec4 value) { } public ImVec4 plus(final float x, final float y, final float z, final float w) { - this.x += x; - this.y += y; - this.z += z; - this.w += w; - return this; + return new ImVec4(this.x + x, this.y + y, this.z + z, this.w + w); } public ImVec4 plus(final ImVec4 value) { @@ -47,11 +43,7 @@ public ImVec4 plus(final ImVec4 value) { } public ImVec4 minus(final float x, final float y, final float z, final float w) { - this.x -= x; - this.y -= y; - this.z -= z; - this.w -= w; - return this; + return new ImVec4(this.x - x, this.y - y, this.z - z, this.w - w); } public ImVec4 minus(final ImVec4 value) { @@ -59,17 +51,21 @@ public ImVec4 minus(final ImVec4 value) { } public ImVec4 times(final float x, final float y, final float z, final float w) { - this.x *= x; - this.y *= y; - this.z *= z; - this.w *= w; - return this; + return new ImVec4(this.x * x, this.y * y, this.z * z, this.w * w); } public ImVec4 times(final ImVec4 value) { return times(value.x, value.y, value.z, value.w); } + public ImVec4 div(final float x, final float y, final float z, final float w) { + return new ImVec4(this.x / x, this.y / y, this.z / z, this.w / w); + } + + public ImVec4 div(final ImVec4 value) { + return div(value.x, value.y, value.z, value.w); + } + @Override public String toString() { return "ImVec4{" diff --git a/imgui-binding/src/main/java/imgui/ImVec2.java b/imgui-binding/src/main/java/imgui/ImVec2.java index 923e5bbf..580d2d16 100644 --- a/imgui-binding/src/main/java/imgui/ImVec2.java +++ b/imgui-binding/src/main/java/imgui/ImVec2.java @@ -31,9 +31,7 @@ public ImVec2 set(final ImVec2 value) { } public ImVec2 plus(final float x, final float y) { - this.x += x; - this.y += y; - return this; + return new ImVec2(this.x + x, this.y + y); } public ImVec2 plus(final ImVec2 value) { @@ -41,9 +39,7 @@ public ImVec2 plus(final ImVec2 value) { } public ImVec2 minus(final float x, final float y) { - this.x -= x; - this.y -= y; - return this; + return new ImVec2(this.x - x, this.y -y); } public ImVec2 minus(final ImVec2 value) { @@ -51,15 +47,21 @@ public ImVec2 minus(final ImVec2 value) { } public ImVec2 times(final float x, final float y) { - this.x *= x; - this.y *= y; - return this; + return new ImVec2(this.x * x, this.y * y); } public ImVec2 times(final ImVec2 value) { return times(value.x, value.y); } + public ImVec2 div(final float x, final float y) { + return new ImVec2(this.x / x, this.y / y); + } + + public ImVec2 div(final ImVec2 value) { + return div(value.x, value.y); + } + @Override public String toString() { return "ImVec2{" diff --git a/imgui-binding/src/main/java/imgui/ImVec4.java b/imgui-binding/src/main/java/imgui/ImVec4.java index 1192eb83..cc7b7951 100644 --- a/imgui-binding/src/main/java/imgui/ImVec4.java +++ b/imgui-binding/src/main/java/imgui/ImVec4.java @@ -35,11 +35,7 @@ public ImVec4 set(final ImVec4 value) { } public ImVec4 plus(final float x, final float y, final float z, final float w) { - this.x += x; - this.y += y; - this.z += z; - this.w += w; - return this; + return new ImVec4(this.x + x, this.y + y, this.z + z, this.w + w); } public ImVec4 plus(final ImVec4 value) { @@ -47,11 +43,7 @@ public ImVec4 plus(final ImVec4 value) { } public ImVec4 minus(final float x, final float y, final float z, final float w) { - this.x -= x; - this.y -= y; - this.z -= z; - this.w -= w; - return this; + return new ImVec4(this.x - x, this.y - y, this.z - z, this.w - w); } public ImVec4 minus(final ImVec4 value) { @@ -59,17 +51,21 @@ public ImVec4 minus(final ImVec4 value) { } public ImVec4 times(final float x, final float y, final float z, final float w) { - this.x *= x; - this.y *= y; - this.z *= z; - this.w *= w; - return this; + return new ImVec4(this.x * x, this.y * y, this.z * z, this.w * w); } public ImVec4 times(final ImVec4 value) { return times(value.x, value.y, value.z, value.w); } + public ImVec4 div(final float x, final float y, final float z, final float w) { + return new ImVec4(this.x / x, this.y / y, this.z / z, this.w / w); + } + + public ImVec4 div(final ImVec4 value) { + return div(value.x, value.y, value.z, value.w); + } + @Override public String toString() { return "ImVec4{" diff --git a/imgui-binding/src/test/java/imgui/ImVec2Test.java b/imgui-binding/src/test/java/imgui/ImVec2Test.java index c7bcea3c..40f1c9e1 100644 --- a/imgui-binding/src/test/java/imgui/ImVec2Test.java +++ b/imgui-binding/src/test/java/imgui/ImVec2Test.java @@ -4,6 +4,8 @@ import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotSame; +import static org.junit.jupiter.api.Assertions.assertSame; class ImVec2Test { @Nested @@ -34,16 +36,20 @@ void fromImVec2() { class set { @Test void withFloats() { - final ImVec2 value = new ImVec2().set(1, 2); + final ImVec2 original = new ImVec2(); + final ImVec2 value = original.set(1, 2); assertEquals(1, value.x); assertEquals(2, value.y); + assertSame(original, value); } @Test void withImVec2() { - final ImVec2 value = new ImVec2().set(new ImVec2(1, 2)); + final ImVec2 original = new ImVec2(); + final ImVec2 value = original.set(new ImVec2(1, 2)); assertEquals(1, value.x); assertEquals(2, value.y); + assertSame(original, value); } } @@ -51,16 +57,20 @@ void withImVec2() { class plus { @Test void withFloats() { - final ImVec2 value = new ImVec2(5, 5).plus(1, 2); + final ImVec2 original = new ImVec2(5, 5); + final ImVec2 value = original.plus(1, 2); assertEquals(6, value.x); assertEquals(7, value.y); + assertNotSame(original, value); } @Test void withImVec2() { - final ImVec2 value = new ImVec2(5, 5).plus(new ImVec2(1, 2)); + final ImVec2 original = new ImVec2(5, 5); + final ImVec2 value = original.plus(new ImVec2(1, 2)); assertEquals(6, value.x); assertEquals(7, value.y); + assertNotSame(original, value); } } @@ -68,16 +78,20 @@ void withImVec2() { class minus { @Test void withFloats() { - final ImVec2 value = new ImVec2(5, 5).minus(1, 2); + final ImVec2 original = new ImVec2(5, 5); + final ImVec2 value = original.minus(1, 2); assertEquals(4, value.x); assertEquals(3, value.y); + assertNotSame(original, value); } @Test void withImVec2() { - final ImVec2 value = new ImVec2(5, 5).minus(new ImVec2(1, 2)); + final ImVec2 original = new ImVec2(5, 5); + final ImVec2 value = original.minus(new ImVec2(1, 2)); assertEquals(4, value.x); assertEquals(3, value.y); + assertNotSame(original, value); } } @@ -85,16 +99,41 @@ void withImVec2() { class times { @Test void withFloats() { - final ImVec2 value = new ImVec2(5, 5).times(1, 2); + final ImVec2 original = new ImVec2(5, 5); + final ImVec2 value = original.times(1, 2); assertEquals(5, value.x); assertEquals(10, value.y); + assertNotSame(original, value); } @Test void withImVec2() { - final ImVec2 value = new ImVec2(5, 5).times(new ImVec2(1, 2)); + final ImVec2 original = new ImVec2(5, 5); + final ImVec2 value = original.times(new ImVec2(1, 2)); assertEquals(5, value.x); assertEquals(10, value.y); + assertNotSame(original, value); + } + } + + @Nested + class div { + @Test + void withFloats() { + final ImVec2 original = new ImVec2(10, 10); + final ImVec2 value = original.div(5, 2); + assertEquals(2, value.x); + assertEquals(5, value.y); + assertNotSame(original, value); + } + + @Test + void withImVec2() { + final ImVec2 original = new ImVec2(10, 10); + final ImVec2 value = original.div(new ImVec2(5, 2)); + assertEquals(2, value.x); + assertEquals(5, value.y); + assertNotSame(original, value); } } } diff --git a/imgui-binding/src/test/java/imgui/ImVec4Test.java b/imgui-binding/src/test/java/imgui/ImVec4Test.java index 411d3927..50d2504d 100644 --- a/imgui-binding/src/test/java/imgui/ImVec4Test.java +++ b/imgui-binding/src/test/java/imgui/ImVec4Test.java @@ -4,6 +4,8 @@ import org.junit.jupiter.api.Test; import static org.junit.jupiter.api.Assertions.assertEquals; +import static org.junit.jupiter.api.Assertions.assertNotSame; +import static org.junit.jupiter.api.Assertions.assertSame; class ImVec4Test { @Nested @@ -27,7 +29,7 @@ void fromFloats() { } @Test - void fromImVec2() { + void fromImVec4() { final ImVec4 value = new ImVec4(new ImVec4(1, 2, 3, 4)); assertEquals(1, value.x); assertEquals(2, value.y); @@ -40,20 +42,24 @@ void fromImVec2() { class set { @Test void withFloats() { - final ImVec4 value = new ImVec4().set(1, 2, 3, 4); + final ImVec4 original = new ImVec4(1, 2, 3, 4); + final ImVec4 value = original.set(1, 2, 3, 4); assertEquals(1, value.x); assertEquals(2, value.y); assertEquals(3, value.z); assertEquals(4, value.w); + assertSame(original, value); } @Test void withImVec4() { - final ImVec4 value = new ImVec4().set(new ImVec4(1, 2, 3, 4)); + final ImVec4 original = new ImVec4(1, 2, 3, 4); + final ImVec4 value = original.set(new ImVec4(1, 2, 3, 4)); assertEquals(1, value.x); assertEquals(2, value.y); assertEquals(3, value.z); assertEquals(4, value.w); + assertSame(original, value); } } @@ -61,16 +67,24 @@ void withImVec4() { class plus { @Test void withFloats() { - final ImVec4 value = new ImVec4(5, 5, 5, 5).plus(1, 2, 3, 4); + final ImVec4 original = new ImVec4(5, 5, 5, 5); + final ImVec4 value = original.plus(1, 2, 3, 4); assertEquals(6, value.x); assertEquals(7, value.y); + assertEquals(8, value.z); + assertEquals(9, value.w); + assertNotSame(original, value); } @Test void withImVec4() { - final ImVec4 value = new ImVec4(5, 5, 5, 5).plus(new ImVec4(1, 2, 3, 4)); + final ImVec4 original = new ImVec4(5, 5, 5, 5); + final ImVec4 value = original.plus(new ImVec4(1, 2, 3, 4)); assertEquals(6, value.x); assertEquals(7, value.y); + assertEquals(8, value.z); + assertEquals(9, value.w); + assertNotSame(original, value); } } @@ -78,20 +92,24 @@ void withImVec4() { class minus { @Test void withFloats() { - final ImVec4 value = new ImVec4(5, 5, 5, 5).minus(1, 2, 3, 4); + final ImVec4 original = new ImVec4(5, 5, 5, 5); + final ImVec4 value = original.minus(1, 2, 3, 4); assertEquals(4, value.x); assertEquals(3, value.y); assertEquals(2, value.z); assertEquals(1, value.w); + assertNotSame(original, value); } @Test void withImVec4() { - final ImVec4 value = new ImVec4(5, 5, 5, 5).minus(new ImVec4(1, 2, 3, 4)); + final ImVec4 original = new ImVec4(5, 5, 5, 5); + final ImVec4 value = original.minus(new ImVec4(1, 2, 3, 4)); assertEquals(4, value.x); assertEquals(3, value.y); assertEquals(2, value.z); assertEquals(1, value.w); + assertNotSame(original, value); } } @@ -99,20 +117,49 @@ void withImVec4() { class times { @Test void withFloats() { - final ImVec4 value = new ImVec4(5, 5, 5, 5).times(1, 2, 3, 4); + final ImVec4 original = new ImVec4(5, 5, 5, 5); + final ImVec4 value = original.times(1, 2, 3, 4); assertEquals(5, value.x); assertEquals(10, value.y); assertEquals(15, value.z); assertEquals(20, value.w); + assertNotSame(original, value); } @Test void withImVec4() { - final ImVec4 value = new ImVec4(5, 5, 5, 5).times(new ImVec4(1, 2, 3, 4)); + final ImVec4 original = new ImVec4(5, 5, 5, 5); + final ImVec4 value = original.times(new ImVec4(1, 2, 3, 4)); assertEquals(5, value.x); assertEquals(10, value.y); assertEquals(15, value.z); assertEquals(20, value.w); + assertNotSame(original, value); + } + } + + @Nested + class div { + @Test + void withFloats() { + final ImVec4 original = new ImVec4(10, 10, 15, 15); + final ImVec4 value = original.div(5, 2, 3, 5); + assertEquals(2, value.x); + assertEquals(5, value.y); + assertEquals(5, value.z); + assertEquals(3, value.w); + assertNotSame(original, value); + } + + @Test + void withImVec4() { + final ImVec4 original = new ImVec4(10, 10, 15, 15); + final ImVec4 value = original.div(new ImVec4(5, 2, 3, 5)); + assertEquals(2, value.x); + assertEquals(5, value.y); + assertEquals(5, value.z); + assertEquals(3, value.w); + assertNotSame(original, value); } } }