当前位置: 首页>>代码示例>>Java>>正文


Java ShortArray.get方法代码示例

本文整理汇总了Java中com.badlogic.gdx.utils.ShortArray.get方法的典型用法代码示例。如果您正苦于以下问题:Java ShortArray.get方法的具体用法?Java ShortArray.get怎么用?Java ShortArray.get使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.badlogic.gdx.utils.ShortArray的用法示例。


在下文中一共展示了ShortArray.get方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getGraphFromTriangulation

import com.badlogic.gdx.utils.ShortArray; //导入方法依赖的package包/类
private Multigraph<GameRoom, NoDuplicateEdge> getGraphFromTriangulation(ShortArray trianglesIndices, Array<GameRoom> rooms) {

        Gdx.app.log("GraphGenerator", "  --> Generating graph from triangulation");

        Multigraph<GameRoom, NoDuplicateEdge> graph = new Multigraph<>(NoDuplicateEdge.class);

        int indexCount = trianglesIndices.size;

        for (int i = 2; i < indexCount; i += 3) {
            short index1 = trianglesIndices.get(i - 2);
            short index2 = trianglesIndices.get(i - 1);
            short index3 = trianglesIndices.get(i);

            GameRoom room1 = rooms.get(index1);
            GameRoom room2 = rooms.get(index2);
            GameRoom room3 = rooms.get(index3);

            graph.addVertex(room1);
            graph.addVertex(room2);
            graph.addVertex(room3);

            if (!graph.containsEdge(room1, room2)) graph.addEdge(room1, room2);
            if (!graph.containsEdge(room2, room3)) graph.addEdge(room2, room3);
            if (!graph.containsEdge(room3, room1)) graph.addEdge(room3, room1);

        }

        return graph;
    }
 
开发者ID:LeonardBesson,项目名称:DunGen,代码行数:30,代码来源:GraphGenerator.java

示例2: drawBounds

import com.badlogic.gdx.utils.ShortArray; //导入方法依赖的package包/类
/** Draw bounding boxes (hitbox/collision detection) */
private void drawBounds() {
	boolean polyTriangles = false;
	
	for (Entity entity : objects) { 
		BoundsComponent bounds = Mappers.bounds.get(entity);		
		TransformComponent t = Mappers.transform.get(entity);
		
		if (bounds != null) {
			//draw Axis-Aligned bounding box			
			Rectangle rect = bounds.poly.getBoundingRectangle();
			shape.setColor(1, 1, 0, 1);
			shape.rect(t.pos.x - rect.width/2, t.pos.y - rect.height/2, rect.width, rect.height);

			//draw Orientated bounding box
			shape.setColor(1, 0, 0, 1);
			shape.polygon(bounds.poly.getTransformedVertices());

			if (polyTriangles) {
				// draw triangles
				shape.setColor(Color.BLUE);
				FloatArray points = new FloatArray(bounds.poly.getTransformedVertices());
				ShortArray triangles = tri.computeTriangles(points, false);
				for (int i = 0; i < triangles.size; i += 3) {
					int p1 = triangles.get(i) * 2;
					int p2 = triangles.get(i + 1) * 2;
					int p3 = triangles.get(i + 2) * 2;
					shape.triangle(
							points.get(p1), points.get(p1 + 1), 
							points.get(p2), points.get(p2 + 1),
							points.get(p3), points.get(p3 + 1));
				}
			}
		}
	}
}
 
开发者ID:0XDE57,项目名称:SpaceProject,代码行数:37,代码来源:DebugUISystem.java

示例3: triangulate

import com.badlogic.gdx.utils.ShortArray; //导入方法依赖的package包/类
/** @param concave the concave polygon to triangulate
 *  @return an array of triangles representing the given concave polygon
 *  @see com.badlogic.gdx.math.EarClippingTriangulator#computeTriangles(float[]) */
public static Polygon[] triangulate(Polygon concave) {
    Vector2[] polygonVertices = toVector2Array(concave.getTransformedVertices());
    ShortArray indices = new EarClippingTriangulator().computeTriangles(toFloatArray(polygonVertices));
    Vector2[] vertices = new Vector2[indices.size];
    for(int i = 0; i < indices.size; i++)
        vertices[i] = polygonVertices[indices.get(i)];
    return toPolygonArray(vertices, 3);
}
 
开发者ID:lukz,项目名称:Simple-Isometric-Game,代码行数:12,代码来源:GeometryUtils.java


注:本文中的com.badlogic.gdx.utils.ShortArray.get方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。