javascript - 如何将此处理代码转换为 P5.js
问题描述
在处理中我这样做了:
void turnFacesZ(int dir) {
for (Face f : faces) {
f.turnZ(dir*HALF_PI);
}
}
我试过这个:
function turnFacesZ(dir) {
for (var f; f < faces.length(); f++) {
f.turnZ(dir*HALF_PI);
}
}
还有这个:
function turnFacesX(dir) {
faces.forEach(function(turnX(dir*HALF_PI)));
}
尽管它们都不起作用。
还,
var matrix = new PMatrix3D();
什么相当于 javascript 中的 PMatrix3D 库?
解决方案
在第一次尝试中:
function turnFacesZ(dir) { for (var f; f < faces.length(); f++) { f.turnZ(dir*HALF_PI); } }
您错过了初始化循环 ( var f=0
) 的控制变量。它一定要是:
function turnFacesZ(dir) {
for (var f=0; f < faces.length(); f++) {
f.turnZ(dir*HALF_PI);
}
}
在第二次尝试
function turnFacesX(dir) { faces.forEach(function(turnX(dir*HALF_PI))); }
您错过了回调函数中的“当前值”参数,并且回调函数没有正文:
function turnFacesX(dir) {
faces.forEach( function(f) {
f.turnX(dir*HALF_PI);
} );
}
如果您想在 javascript 中进行矩阵计算,那么您可以使用glMatrix之类的库。
推荐阅读
- python - 在 Docker 构建期间导致问题的 python 版本
- android - 在方法中返回 JSONObject 响应
- javascript - 删除带有参数的函数内的事件处理程序
- php - Cloud Firestore 使用 REST API 添加多个文档 - PHP
- .net - Angular 连接到 ASP.NET API SignalR Hub 返回 404 Not Found (Identity Server 3)
- sql - 如何对 sql 连接进行聚合?
- docker - Start.Process() .net Core 在 Linux Docker 中不起作用
- hyperledger-fabric - 如何使用成员 CA 身份进行超级账本结构交易
- java - 工作区中没有安装 JRE 来启动 spring
- button - 如何在 libgdx 中单击一次按钮?