我正在尝试编写一个函数,它接受两个参数(文件名和放入内部的sting),创建一个包含字符串的新文件.
<?php
function writeFile($name, $string) {
$text = $string;
$fh = fopen($name + ".txt", 'w') or die("Could not create the file.");
fwrite($fh, $text) or die("Could not write to the file.");
fclose($fh);
echo "File " . $name . ".txt created!";
}
writeFile("testovFail", "Lorem ipsum dolor sit amet");
if(file_exists("testovFail.txt")) echo "<br>File exists!";
?>
Run Code Online (Sandbox Code Playgroud)
这是我到目前为止,函数回声创建文件,但是当我运行IF条件来检查文件是否已创建时,它返回它不是.
我正在尝试实现类似于以下的多边形吹制和重新组装效果:
在这两个示例中,您可以看到它们如何将顶点从一个 3D 模型变形/过渡到另一个,从而产生非常酷的效果。我有类似的工作,但我无法理解它们如何通过速度偏移来转换顶点(请参阅第一个链接,看看粒子如何不简单地映射和缓动到新位置,而是如何做一些角度偏移):
因此,我在 Three.js 中导入两个模型,采用顶点数较大的模型并复制其几何图形,同时将第二个模型数据作为属性附加:
class CustomGeometry extends THREE.BufferGeometry {
constructor (geometry1, geometry2) {
super()
let { count } = geometry1.attributes.position
// this will hold
let targetArr = new Float32Array(count * 3)
let morphFactorArr = new Float32Array(count)
for (let i = 0; i < count; i += 3) {
targetArr[i + 0] = geometry2.attributes.position.array[i + 0] || 0
targetArr[i + 1] = geometry2.attributes.position.array[i + 1] || 0
targetArr[i + 2] = geometry2.attributes.position.array[i + 2] || 0 …
Run Code Online (Sandbox Code Playgroud) 我正在尝试复制这种效果:https : //dribbble.com/shots/1754428-Wave?list=users&offset=5
我想与我提供的链接类似地为飞机的顶点设置动画。我知道它是使用正弦波传播实现的,但我不知道如何从平面的中心点开始运动。现在,我有这样的事情
(function drawFrame(ts){
window.requestAnimationFrame(drawFrame);
var vLength = plane.geometry.vertices.length;
for (var i = 0; i < vLength; i++) {
var v = plane.geometry.vertices[i];
v.z = Math.sin(ts / 500 + (v.x * (vLength / 2)) * (v.y / (vLength / 2))) * 3 + 5;
}
Run Code Online (Sandbox Code Playgroud)
它的工作原理还可以,但请注意左上角和右下角的运动是如何向内,朝向平面中心而不是向外的,这应该是。其他两个角落的行为完全符合我的希望。
这是我目前拥有的链接:http : //codepen.io/gbnikolov/pen/QwjGPg
欢迎所有的建议和想法!