Search in sources :

Example 1 with AABBi

use of org.terasology.joml.geom.AABBi in project Terasology by MovingBlocks.

the class BlockRegionTypeHandlerTest method testSerializeBlockRegion.

@Test
public void testSerializeBlockRegion() {
    AABBBlockRegion1Test aabb1 = new AABBBlockRegion1Test();
    aabb1.a1 = new BlockRegion(5, 5, 5, 13, 12, 14);
    aabb1.a2 = new AABBi(3, 5, 5, 22, 12, 14);
    JsonElement tree = gson.toJsonTree(aabb1);
    JsonObject obj = tree.getAsJsonObject();
    assertTrue(obj.has("a1"));
    assertBlockRegion(obj.get("a1"), 5, 5, 5, 13, 12, 14);
    assertTrue(obj.has("a2"));
    assertAABBi(obj.get("a2"), 3, 5, 5, 22, 12, 14);
}
Also used : JsonElement(com.google.gson.JsonElement) JsonObject(com.google.gson.JsonObject) BlockRegion(org.terasology.engine.world.block.BlockRegion) AABBi(org.terasology.joml.geom.AABBi) Test(org.junit.jupiter.api.Test)

Example 2 with AABBi

use of org.terasology.joml.geom.AABBi in project Terasology by MovingBlocks.

the class AABBiTypeHandler method deserialize.

@Override
public Optional<AABBi> deserialize(PersistedData data) {
    if (!data.isNull() && data.isValueMap()) {
        PersistedDataMap map = data.getAsValueMap();
        PersistedDataArray minDataArr = map.get(MIN_FIELD).getAsArray();
        PersistedDataArray maxDataArr = map.get(MIN_FIELD).getAsArray();
        TIntList minArr = minDataArr.getAsIntegerArray();
        TIntList maxArr = maxDataArr.getAsIntegerArray();
        return Optional.of(new AABBi(minArr.get(0), minArr.get(1), minArr.get(2), maxArr.get(0), maxArr.get(1), maxArr.get(2)));
    }
    return Optional.empty();
}
Also used : PersistedDataArray(org.terasology.persistence.typeHandling.PersistedDataArray) PersistedDataMap(org.terasology.persistence.typeHandling.PersistedDataMap) AABBi(org.terasology.joml.geom.AABBi) TIntList(gnu.trove.list.TIntList)

Example 3 with AABBi

use of org.terasology.joml.geom.AABBi in project Terasology by MovingBlocks.

the class AABBTypeHandlerTest method testSerializeAABB1.

@Test
public void testSerializeAABB1() {
    AABB3Test aabb3 = new AABB3Test();
    aabb3.a1 = new AABBf(10.0f, 5.0f, 0, 5.3f, 2.0f, 2.2f);
    aabb3.a2 = new AABBi(0, 0, 0, 10, 10, 10);
    JsonElement tree = gson.toJsonTree(aabb3);
    JsonObject obj = tree.getAsJsonObject();
    assertTrue(obj.has("a1"));
    assertAABBf(obj.get("a1"), 10.0f, 5.0f, 0, 5.3f, 2.0f, 2.2f);
    assertTrue(obj.has("a2"));
    assertAABBi(obj.get("a2"), 0, 0, 0, 10, 10, 10);
}
Also used : AABBf(org.terasology.joml.geom.AABBf) JsonElement(com.google.gson.JsonElement) JsonObject(com.google.gson.JsonObject) AABBi(org.terasology.joml.geom.AABBi) Test(org.junit.jupiter.api.Test)

Example 4 with AABBi

use of org.terasology.joml.geom.AABBi in project Terasology by MovingBlocks.

the class AABBTypeHandlerTest method testSerializeAABBi.

@Test
public void testSerializeAABBi() {
    AABB1Test aabb1 = new AABB1Test();
    aabb1.a1 = new AABBi(0, 0, 0, 10, 10, 10);
    JsonElement tree = gson.toJsonTree(aabb1);
    JsonObject obj = tree.getAsJsonObject();
    assertTrue(obj.has("a1"));
    assertAABBi(obj.get("a1"), 0, 0, 0, 10, 10, 10);
}
Also used : JsonElement(com.google.gson.JsonElement) JsonObject(com.google.gson.JsonObject) AABBi(org.terasology.joml.geom.AABBi) Test(org.junit.jupiter.api.Test)

Aggregations

AABBi (org.terasology.joml.geom.AABBi)4 JsonElement (com.google.gson.JsonElement)3 JsonObject (com.google.gson.JsonObject)3 Test (org.junit.jupiter.api.Test)3 TIntList (gnu.trove.list.TIntList)1 BlockRegion (org.terasology.engine.world.block.BlockRegion)1 AABBf (org.terasology.joml.geom.AABBf)1 PersistedDataArray (org.terasology.persistence.typeHandling.PersistedDataArray)1 PersistedDataMap (org.terasology.persistence.typeHandling.PersistedDataMap)1