标签: processing

在处理过程中留下褪色痕迹

我有一个在屏幕上移动的圆圈,我需要的是能够使该圆圈在其后面留下一条线,该线在一秒左右后消失。我正在使用处理。

processing

3
推荐指数
1
解决办法
1万
查看次数

Java(处理)对象序列化

我正在尝试通过处理制作一个彩色方块的 3D 矩阵。它工作正常,但是当我想将其保存到序列化 DataMatrix 对象的文件时,我收到此异常:java.io.NotSerializedException。Square 和 DataMatrix 都实现了可序列化,所以我不知道是什么原因导致的。

文件管理器:

class FileManager
{

  FileManager()
  {}

  public void saveMatrix(String path, DataMatrix dm)
  {
    try
    {
    FileOutputStream file = new FileOutputStream(path);
    ObjectOutputStream output = new ObjectOutputStream(file);
    output.writeObject(dm); 
    output.close();
    }
    catch (Exception e)
    {
       e.printStackTrace();
    }
  } 

  public DataMatrix openMatrix(String path)
  {
    DataMatrix dm = null;

    try
    {

       FileInputStream file = new FileInputStream(path);
       ObjectInputStream input = new ObjectInputStream(file);
       Object aux = input.readObject();
       input.close();
       if(aux instanceof DataMatrix)
       {
         dm = (DataMatrix)aux;
       }        
    }
    catch (EOFException …
Run Code Online (Sandbox Code Playgroud)

java processing serialization stream

3
推荐指数
1
解决办法
1878
查看次数

如何在javafx中嵌入PApplet?

所以我让我的处理代码在java中运行。但现在我想将它嵌入到我的 GUI 的 JavaFX 中。我怎样才能这样做呢?我尝试使用以下代码,但它似乎不起作用。

 package testprocessing;
import javafx.application.Application;
import javafx.embed.swing.SwingNode;
import javafx.scene.*;
import javafx.scene.paint.Color;
import javafx.stage.Stage;

import javax.swing.JApplet;
import javax.swing.SwingUtilities;
import java.awt.Dimension;

import java.util.concurrent.*;
import processing.core.*;

public class JavaFxApplet extends Application {
    private PApplet applet = new MyProcessingSketch();
    private Dimension appletSize;

    @Override public void init() throws ExecutionException, InterruptedException {
        applet.init();

        FutureTask<Dimension> sizingTask = new FutureTask<>(() ->
            applet.getRootPane().getPreferredSize()
        );
        SwingUtilities.invokeLater(sizingTask);
        appletSize = sizingTask.get();
    }

    @Override public void start(Stage stage) {
        final SwingNode swingNode = new SwingNode();
        SwingUtilities.invokeLater(() ->
            swingNode.setContent(applet.getRootPane())
        ); …
Run Code Online (Sandbox Code Playgroud)

java processing user-interface netbeans javafx

3
推荐指数
1
解决办法
1790
查看次数

使用逼真的重力使物体跳跃一次

我希望我的对象(此时是一个矩形)跳一次,在上升的过程中失去速度。当它几乎停止时,我希望它在下降的过程中掉头并获得速度。当它再次撞击地面时,它应该停止。当我再次按下该键时,它应该再次执行相同的操作。


我尝试编写的代码实现了一个变量float gravity = 0.75;和一个跟踪速度的变量float speed = 10;


当速度大于 1 时,速度应该被矩形的 Y 坐标减去,然后速度应该变低,因为我将它乘以小于 1 的重力

else if (keyCode == UP|| key == 'w') {
    while (speed >1 ) { 
      playerYPosition = playerYPosition-speed;
      speed = speed * gravity;
    }
Run Code Online (Sandbox Code Playgroud)

Gravity 高于 1 但为负,因此我 substrakt 的数字在 final 中相加,矩形变小。为了获得速度,速度乘以重力。

    gravity = -1.25;
    speed = speed * gravity;
    playerYPosition = playerYPosition-speed;
Run Code Online (Sandbox Code Playgroud)

速度现在应该在 -1.2 左右......,所以它小于 -1,这while(...)应该可以工作。再次它应该随着时间的推移获得速度,直到它达到起始速度,只是负面的,并以此为起点。

while (speed < -1 && speed > -10) {
      playerYPosition = playerYPosition-speed;
      speed = …
Run Code Online (Sandbox Code Playgroud)

processing physics

3
推荐指数
1
解决办法
166
查看次数

在 P5.js 中更改坐标系

如您所知,P5 坐标系不是从画布中间开始,加上 y 轴翻转我的问题是如何更改 p5 的坐标,使其与笛卡尔坐标系相同

javascript processing p5.js

3
推荐指数
1
解决办法
1370
查看次数

处理中的打地鼠

打地鼠

我正在处理一个学校项目(Java 模式)。我们有一张关于游戏应该是什么样子的图片。

所以任务是用正方形创建一个网格。随机方块应该亮红色。如果单击红色方块,它应该将颜色更改为绿色并保持绿色。

我的代码目前的样子:

Square[][] grid;
 
int cols = 20;
int rows = 20;
 
void setup() {
  size(400, 400);
  grid = new Square[cols][rows];
  for (int i = 0; i < cols; i++) {
    for (int j = 0; j < rows; j++) {
      grid[i][j] = new Square(i*20, j*20, 20, 20);
    }
  }
}
 
void draw() {
  background(0);
  for (int i = 0; i < cols; i++) {
    for (int j = 0; j < rows; j++) {
      grid[i][j].display();
      if (grid[i][j].x<mouseX …
Run Code Online (Sandbox Code Playgroud)

java processing

3
推荐指数
1
解决办法
222
查看次数

使用 4D OpenSimplex 噪声而不是 2D Perlin 噪声来创建循环噪声的目的是什么?

当我学习创建循环生成艺术 GIF 的方法时,我遇到了两种不同的制作噪声循环的方法。

  1. Etienne Jacob 在其教程中的示例代码使用 4D OpenSimplex Noise,如下所示。

    (float)noise.eval(scl * x, scl * y, R * cos(TWO_PI * t), R * sin(TWO_PI * t));

  2. Daniel Shiffman 在其教程中的示例代码使用 2D Perlin 噪声,如下所示。

    噪声(cos(a)+ 1,sin(a)+ 1);

戈兰·莱文的作品

我的理解是,两者都是通过在噪声空间中“绕圈行走”来实现循环的,如上面的 gif 所示。但我不清楚两者之间的区别。选择 4D OpenSimplex 而不是 2D Perlin Noise 来创建循环噪声的目的是什么?

processing generative-art perlin-noise simplex-noise p5.js

3
推荐指数
1
解决办法
1151
查看次数

如何计算圆和等边三角形的6个交点的坐标?

我知道一个等边三角形的中心(cx,cy)和外接它的蓝色圆圈的半径(r)。

如果我画一个任意半径(半径)的绿色圆,假设这个圆足够大有这个交点,我能得到6个交点(P1、P2、P3...)的坐标吗?

文本

我正在寻找 P5JS/processing 但任何其他线索都可以帮助我......

先感谢您

processing geometry p5.js triangle

3
推荐指数
1
解决办法
162
查看次数

处理中的图像在旋转时消失

我正在使用Processing语言做一个小游戏,但我遇到图像和旋转问题.如果我没有旋转它,我的精灵显示正常,但如果它旋转它会完全消失.这是轮换代码:

void display(boolean alternate) {
    pushMatrix();
    if(!isHead && !isTail && alternate) rotate(radians(180));
    rotate(radians(90*direction));
    image(snake, x, y, linkSize, linkSize);
    popMatrix();
}
Run Code Online (Sandbox Code Playgroud)

当direction为0或alternate为真且direction为2时,则显示图像.否则,不显示图像.我不确定它是否重要,但是蛇是具有alpha透明度的.png图像.蛇的宣言是snake = loadImage("SnakeLink.png");.

java processing transformation image rotation

2
推荐指数
1
解决办法
2065
查看次数

如何解决Java Eclipse中"类型的层次结构不一致"的错误?

我试图使用Processing for Android在Java Eclipse中创建一个Android应用程序但是当我要编译它时,我收到此错误消息" MainAcitvity类型的层次结构不一致 ".这是我的代码:

public class MainActivity extends PApplet {

 public static void main(String args[]) 

 {

     PApplet.main(new String[] { "--present", "com.RDP.MainActivity" });

 }

 Vector path = new Vector();

 public void setup(){

     size(550,550, P3D);
     smooth();

 }

 public void draw(){
     background(255);

     LineSimplifier1 pt;
     noFill();
     strokeWeight(1);
     beginShape();

     for (int i=0; i < path.size(); i++)

     {
         pt = (LineSimplifier1)path.elementAt(i);vertex(pt.x,pt.y);

     }

     endShape();

     strokeWeight(5);

     beginShape(POINTS);

     for (int i=0; i < path.size(); i++)

     {
         pt = (LineSimplifier1)path.elementAt(i);vertex(pt.x,pt.y);      

     }

     endShape();

 }

 public void mousePressed(){ …
Run Code Online (Sandbox Code Playgroud)

processing android

2
推荐指数
1
解决办法
3万
查看次数