我需要设置场景的初始'lookAt'点,它将是屏幕的中心和控件的旋转.如果可能的话,我宁愿设置一个点(或一个物体的位置),而不是旋转角度.
控件是OrbitControl.如果我只是在控制初始化之前设置lookAt,则在第一次用户交互时中心将恢复为(0,0,0),这会导致"间隙"...
// camera
camera = new THREE.PerspectiveCamera( 35, window.innerWidth / window.innerHeight, 0.1, 20000);
camera.position.set(0,20,20);
camera.lookAt(new THREE.Vector3(0,10,0));
// controls
controls = new THREE.OrbitControls( camera );
controls.addEventListener( 'change', render );
Run Code Online (Sandbox Code Playgroud)
如何以正确的方式设置初始点?
我希望一个html文件可以被任何网址加载为iframe,它由Github托管.
此解决方案不起作用:
<?php
header('X-Frame-Options: GOFORIT');
?>
Run Code Online (Sandbox Code Playgroud)
我想我们不能应用这个(mod_headers),那么有没有办法做到这一点?
我正在尝试使pdf.js(完整版)适应我的需要,我只想将初始比例设置为“页面适合”,而不管以前的比例如何。所以我尝试修改viewer.js以实现此目标...
首先,将忽略DEFAULT_SCALE全局(第27行),似乎初始比例是由加载顺序根据先前的比例定义的。
该文档由以下调用的加载功能(第832行)加载,但'scale'参数未设置初始比例...
load: function pdfViewLoad(pdfDocument, scale) {
...
}
Run Code Online (Sandbox Code Playgroud)
尝试在firstPagePromise.then ...函数(第903行)中设置缩放比例也无效:
firstPagePromise.then(function(pdfPage) {
scale = 'page-fit';
...
}
Run Code Online (Sandbox Code Playgroud)
还有一个PDFView.currentScale属性,我试图在不同的地方设置它,但这都不影响:
this.currentScale = 'page-fit';
Run Code Online (Sandbox Code Playgroud)
最后,我可以通过将setScale函数调用到onePageRendered.then ...函数(第920行)中来设置此缩放比例:
onePageRendered.then(function () {
PDFView.setScale('page-fit', true);
...
}
Run Code Online (Sandbox Code Playgroud)
它可以工作,但是setScale函数会被调用两次,因为它似乎是由onePageRendered(我不知道在哪里)使用先前的比例(?)第一次调用的。这个解决方案使两个可见的渲染,并不能真正令人满意...
请问我该怎么做呢?
我必须解析的字符串来自a FileReader(),它可能是有效json文件的内容,或者它可能是无效的(例如script.js)...
问题是try/catch似乎不适用JSON.parse()?
以下代码不会捕获JSON.parse: unexpected character at line 1 column 1 of the JSON data带有无效文件的异常.
try
{
var json = JSON.parse( content );
..
}
catch (e)
{
..
}
Run Code Online (Sandbox Code Playgroud)
为了进行第一次验证,我测试了第一个字符,( content.substr(0, 1) === '{' )但我认为它不够.
实现这一目标的最佳方法是什么?
编辑:这个问题是错误的.