我正在使用PLYLoader加载.ply文件,并使用three.js中的PointCloud对象进行渲染.
var loader = new THREE.PLYLoader();
loader.addEventListener('load', function (event) {
var geometry = event.content;
var material = new THREE.PointCloudMaterial({ vertexColors: true, size: 0.01 });
var mesh = new THREE.PointCloud(geometry, material);
scene.add(mesh);
});
loader.load(file_url);
Run Code Online (Sandbox Code Playgroud)
它工作正常,点数正确呈现.但是这些点呈现为正方形.是否可以将它们更改为圆形?如果是这样,怎么样?
我发现这个旧线程显示了一个three.js样本的图片.我们可以清楚地看到圈子.然而,今天相同的样本显示了正方形(在他们将ParticleSystem更改为PointCloud之后).
谢谢
我正在尝试将新的Architecture Components添加ViewModel到我的应用程序中,同时用匕首注入它们.我的代码基于google 在这里显示的内容.我试图避免ViewModelFactory为每种ViewModel类型使用,所以我使用了ViewModelFactory它Map<Class<? extends ViewModel>, Provider<ViewModel>> creators.它适用于ViewModels具有@Singleton范围的依赖项.但是,我的一个人ViewModels有一个来自片段的依赖.这是该片段的模块:
@Module
public abstract class DownloadIssueDialogFragmentModule {
@Binds
abstract DialogFragment dialogFragment(DownloadIssueDialogFragment dialogFragment);
@Provides
@FragmentScope
static Issue provideIssue(DownloadIssueDialogFragment dialogFragment) {
return dialogFragment.getIssue();
}
}
Run Code Online (Sandbox Code Playgroud)
我的ViewModelModule:
@Module
public abstract class ViewModelModule {
@Binds
abstract ViewModelProvider.Factory bindViewModelFactory(ViewModelFactory factory);
@Binds
@IntoMap
@ViewModelKey(DownloadIssueViewModel.class)
abstract ViewModel bindDownloadIssueViewModel(DownloadIssueViewModel viewModel);
}
Run Code Online (Sandbox Code Playgroud)
匕首说不能提供Issue.它Map<Class<? extends ViewModel>, Provider<ViewModel>>似乎有意义,因为它似乎是在编译时创建的.但我只会知道该片段范围内的参数.我怎样才能做到这一点?
谢谢.
编辑:
最后,我采用了不同的方法.现在我为每个ViewModel创建一个工厂,而不是注入ViewModel,我注入了工厂.
我创建了这个库: …
android mvvm dagger dagger-2 android-architecture-components
我一直在包装一个同步库,所以每个执行 IO 的方法都会返回一个Observable. 然而,其中一些方法返回,Observable<Void>因为我只关心它的完成情况。
如何在Observable不发出任何内容之后链接调用?
accountManager.doAuth()
.flatMap(x -> paginator.next())
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe(... subscriber stuff ...)
Run Code Online (Sandbox Code Playgroud)
我必须doAuth为每个请求调用它并返回Observable<Void>. 由于它不发出项目,onNext因此永远不会被调用,只有onCompleted.
关于doAuth我只关心它是否完成或给出错误。如果它完成,我希望它paginator.next()被调用,以便我可以在onCompleted/onError/onNext.
到目前为止,我一直在使用flatMap链式调用,当我真正关心以前的 Observables 返回的东西时,它工作得很好。
android ×2
3d ×1
android-architecture-components ×1
dagger ×1
dagger-2 ×1
java ×1
javascript ×1
mvvm ×1
point-clouds ×1
rx-java ×1
three.js ×1