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


Java GraphicsContext.translate方法代码示例

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


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

示例1: draw

import javafx.scene.canvas.GraphicsContext; //导入方法依赖的package包/类
/**
 * Draws the image representing the nucleotide on a graphics context, with specified rotation.
 * @param GraphicsContext gc: The GraphicsContext you want to draw the object on
 * @param x: The x coord you want to draw the image at
 * @param y: The y coord you want to draw the image at
 * @param r: The rotation, in degrees, you want to draw the nucleotide at. 0 would draw it with the base pointing up.
 */
public void draw(GraphicsContext gc, int x, int y, int r) {
	gc.save();
	gc.translate(x, y);
	gc.rotate(r);
	gc.translate(-x, -y);
	gc.drawImage(image, x, y);
	gc.restore();
}
 
开发者ID:clonex10100,项目名称:Dna-replication-game,代码行数:16,代码来源:Nucleotide.java

示例2: render

import javafx.scene.canvas.GraphicsContext; //导入方法依赖的package包/类
public void render(Bullet bullet, GraphicsContext gc) {
    gc.save();
    gc.translate(bullet.getX(), bullet.getY());
    gc.transform(new Affine(new Rotate(bullet.getAngle()))); //Rotate the gc to the angle of the bullet's path

    //TODO increase bullet size in general

    if (this == STANDARD) {
        gc.translate(-2, -3); //Move SVG to center of Bullet
        gc.setFill(Color.GRAY);
        gc.beginPath();
        gc.appendSVGPath("M 0 3 Q 0 1 2 0 Q 4 1 4 3 L 4 7 L 0 7 Z"); //SVG PATH OF BULLET
        gc.fill();
        gc.closePath();
    } else if (this == ROCKET) {
        //TODO create rocket SVG
        gc.setFill(Color.GRAY);
        gc.beginPath();
        gc.appendSVGPath("M 0 3 Q 0 1 2 0 Q 4 1 4 3 L 4 7 L 0 7 Z"); //SVG PATH OF BULLET
        gc.fill();
        gc.closePath();
    } else if (this == BOUNCY) {
        gc.setFill(Color.GRAY);
        gc.fillOval(bullet.getX() - bullet.getRadius(), bullet.getY() - bullet.getRadius(), bullet.getRadius() * 2, bullet.getRadius() * 2);
    }

    gc.restore();
}
 
开发者ID:TheBromo,项目名称:netTanks,代码行数:29,代码来源:Bullet.java

示例3: draw

import javafx.scene.canvas.GraphicsContext; //导入方法依赖的package包/类
/**
 * Draws both strands next to each other
 * @param gc- graphics context to draw helix on
 * @param x- left start of the drawing
 * @param y- upper start of the drawing
 */
public void draw(GraphicsContext gc) {
	gc.save();
	gc.translate(x, y-imageSize);
	gc.rotate(r);
	gc.translate(-x, -(y-imageSize));
	strands[0].draw(gc);
	strands[1].draw(gc);
	gc.restore();
}
 
开发者ID:clonex10100,项目名称:Dna-replication-game,代码行数:16,代码来源:Helix.java

示例4: drawCursor

import javafx.scene.canvas.GraphicsContext; //导入方法依赖的package包/类
public static void drawCursor(GraphicsContext g, ViewPort v, Vector2fc mouse)
{
	Vector2dc offset = ViewPort.getScreenPos(v,
			(int) Math.floor(mouse.x()),
			(int) Math.floor(mouse.y()),
			new Vector2d());

	g.save();
	g.translate(offset.x(), offset.y());
	g.scale(v.getUnitScale(), v.getUnitScale());
	g.setFill(COLOR_CURSOR);
	g.fillRect(0, 0, 1, 1);
	g.restore();
}
 
开发者ID:andykuo1,项目名称:candlelight,代码行数:15,代码来源:Renderer.java

示例5: drawTile

import javafx.scene.canvas.GraphicsContext; //导入方法依赖的package包/类
public static void drawTile(GraphicsContext g, DungeonTileRenderer renderer, DungeonTile tile, double x, double y, double width, double height)
{
	renderer.tile = tile;

	g.save();
	g.translate(x, y);
	g.scale(width, height);
	renderer.tile.draw(renderer, g);
	g.restore();
}
 
开发者ID:andykuo1,项目名称:candlelight,代码行数:11,代码来源:Renderer.java

示例6: draw

import javafx.scene.canvas.GraphicsContext; //导入方法依赖的package包/类
/**
 * Draws all nucleotides in strand from left to right
 * @param gc: GraphicsContext on which to draw strand
 * Add type functionality
 */
public void draw(GraphicsContext gc) {
	int x2 = x;
	int y2 = y;
	if(r!=0) {
			gc.save();
			gc.translate(x, y);
			gc.rotate(r);
			gc.translate(-x, -y);
	}
	if(type==1){
		for(int i = 0; i < bases.size(); i++) {
			if(bases.get(i) != null){
				bases.get(i).draw(gc,x2,y);
				if(i+1< bases.size()){
					if(bases.get(i+1) != null && bonds.get(i)){
						gc.strokeLine(x2+Nucleotide.getImageSize()*.81, y+Nucleotide.getImageSize()*.81, x2+Nucleotide.getImageSize()*1.10, y+Nucleotide.getImageSize()*.73);
					}
				}
			}
			x2+=Nucleotide.getImageSize();
		}
	}
	else if(type == 0){
		int lx = x2+Nucleotide.getImageSize()*2;
		y2+=Nucleotide.getImageSize();
		x2+=Nucleotide.getImageSize();
		for(int i = 0; i < bases.size(); i++) {
			if(bases.get(i) != null){
				bases.get(i).draw(gc,x2,y2,180);
				if(i+1< bases.size()){
					if(bases.get(i+1) != null && bonds.get(i)){
						//gc.strokeLine(x2,y2,x2+50,y2+50);
						gc.strokeLine(lx-Nucleotide.getImageSize()*.81, y2-Nucleotide.getImageSize()*.81, lx-Nucleotide.getImageSize()*1.10, y2-Nucleotide.getImageSize()*.73);
					}
				}
			}
			x2+=Nucleotide.getImageSize();
			lx+=Nucleotide.getImageSize();
		}
	}
	else{
		System.out.println("Type is not 0 or 1");
	}
	if(r!=0) {
		gc.restore();
	}
}
 
开发者ID:clonex10100,项目名称:Dna-replication-game,代码行数:53,代码来源:Strand.java

示例7: rotateCtx

import javafx.scene.canvas.GraphicsContext; //导入方法依赖的package包/类
public static final void rotateCtx(final GraphicsContext CTX, final double X, final double Y, final double ANGLE) {
    CTX.translate(X, Y);
    CTX.rotate(ANGLE);
    CTX.translate(-X, -Y);
}
 
开发者ID:HanSolo,项目名称:charts,代码行数:6,代码来源:Helper.java


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