我现在与Leaflet和Angular CLI一起工作了几个星期,涉及一个涉及地理地图和室内地图(Leaflet自定义地图)的项目。
该应用程序在概念上非常简单。我必须以简单的位置树表的形式向用户提供室内位置(例如房间)的列表,在其中,用户单击时,必须调用新的室内地图。另外,我必须制作一个自定义搜索框,其中包含一些过滤选项,用于搜索结构化数据集并以小叶标记的形式在地图上绘制数据。
我的问题是:考虑到应用程序的性质和我正在使用的技术(Leaflet库和Angular CLI ),实现上述2个控件(位置树和搜索框)的最佳方法是什么?(角4.x))?
从我的角度来看,我现在可以看到两个选项:
1)使用Leaflet L.control.extended(negative(-):创建控件(位置树和带有过滤器的搜索框):在我看来,我必须按顺序在L.control.extended'onAdd'函数中静态键入html 创建控件->没有Angular 4模板引擎的优势)
2)以Angular 4方式使用Angular 4 Component的模板创建控件,而忽略了Leaflet L.control.extended的存在 (否定:在我看来,此选项不必要地使应用程序复杂化+直观上似乎是错误的,因为Leaflet扩展控件似乎对于这类问题“天生”)
如果能以某种方式将Angular组件动态嵌套在Leaflet自定义控件中,那就太好了。有什么建议么?
在我的(C++/OpenGL)程序中,我加载一组纹理并设置纹理参数,如下所示:
\n\n//TEXTURES\nglGenTextures(1, &texture1);\nglBindTexture(GL_TEXTURE_2D, texture1);\n// set the texture wrapping parameters\nglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);\nglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);\n// set texture filtering parameters\nglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);\nglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);\n\nglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);\nRun Code Online (Sandbox Code Playgroud)\n\n我发现各向异性过滤可以帮助我增强场景的外观。因此,我使用这一行来实现它:
\n\nglTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_ANISOTROPY, 16);\nRun Code Online (Sandbox Code Playgroud)\n\n虽然我在我的笔记本电脑(有 AMD GPU 供应商)上编译这行代码没有任何问题,但我无法在使用 Intel(R) HD Graphics 530 (Skylake GT2) 的另一台计算机上编译这段代码。\n具体来说,尝试使用 g++ 编译该代码段会输出以下错误:
\n\nerror: \xe2\x80\x98GL_TEXTURE_MAX_ANISOTROPY\xe2\x80\x99 was not declared in this scope\n glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_ANISOTROPY, 16);\nRun Code Online (Sandbox Code Playgroud)\n\n更具体地说,在我的 Linux 终端中运行以下命令:
\n\nglxinfo | grep -i opengl\nRun Code Online (Sandbox Code Playgroud)\n\n显示有关我的 GPU 供应商和 OpenGL 支持的以下详细信息:
\n\n\n\n我知道在 中启用了各向异性过滤ARB_texture_filter_anisotropic,但老实说,我不知道如何检查我的 GPU 供应商是否支持该扩展,如果支持,我如何才能使用各向异性过滤? …