Java怎么实现导入3D模型并数据web展示? 80C

java springmvc web端展示 读取3D .3ds .dxf等模型,并加入散点式数据展示,采用什么技术、插件来实现?

0

1个回答

文1 创建三维几何模型:[ http://www.cnblogs.com/dennisit/archive/2013/05/06/3063042.html ]
文2 加载外部Obj模型:[ http://www.cnblogs.com/dennisit/archive/2013/05/07/3065126.html ]
文3 载入外部3ds模型:[ http://www.cnblogs.com/dennisit/archive/2013/05/07/3065479.html ]

本来按照苏若年大神的文章以及足够将两种模型都用Java3D显示出来了,但文章给出的显现效果是不含纹理的,而项目需要生成含纹理的3D模型。因此,本文的重点主要在载入纹理上,算是对苏若年大神文章的小小补充吧。

———————————————————————————————————————————————————————
加载Obj模型及纹理:

文2中给出的代码实际上是可以保证导入Obj文件同时加载纹理的,只不过对Obj文件有一定的要求。Java3D可以导入的含纹理的Obj模型,其格式为Wavefront obj。(不保证其它格式的文件也可以)这种文件除了有一个模型文件.obj外,还含有纹理文件.mtl以及相应的各种格式的纹理图片。这样的Obj模型可以通过maya生成。

模型.obj文件除模型本身数据外,还会指定纹理文件.mtl的路径,关键字为mtllib。纹理文件.mtl中也会包含纹理图片的路径,也就是这个路径会误导使用者,使得得到的模型无法载入纹理,其问题的原因在与Java3d加载Obj的类——ObjectFile。

在加载模型时,ObjectFile会根据模型文件的路径获取一个basedir目录路径,这个目录路径会同时用在解析.obj文件和.mtl文件中,也就是说在解析这两个文件时,文件路径解析的结果是basedir+文件名。这就导致一个问题,当.obj文件、.mtl文件以及纹理贴图不在同一个目录时,是无法加载纹理的。换句话说,这两个文件的路径是失效的,只要文件名有效。有兴趣的朋友可以打开.obj文件和.mtl文件看一下,设置文件的路径,然后在程序中进行调试看看。

加载含纹理的Obj模型,正确的做法是将.obj文件及其相应的.mtl文件和纹理贴图放在同一目录下。

2
qq_29295835
yusq456 没有别的办法吗?
大约一年之前 回复
qq_29295835
yusq456 这些试过了,appelt 试过多种方法,web就是展示不出来
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
ecxel导入并展示数据
可能有的地方不太严谨,欢迎指正 需要的jar包有: poi-3.17.jar poi-ooxml-3.17.jarpoi-ooxml-schemas-3.17.jarxmlbeans-3.0.2.jardom4j-1.6.1.jar // excel回显 @RequestMapping(value = "/excel", pr...
Android 3D模型展示
开发工具:Unity3d 2017.3       Android Studio 3.       Visual studio 2017 开发语言 : C#  , java   3D场景,本人做的是一个简单的3D海岛场景,里面有山脉,椰子树,草 岛周围是海,海水可以动,虽然效果不明显。 下面是单指拖动,双指放大缩小的脚本代码 using System.Collections; using...
java 3d 导入obj模型的贴图怎么实现?
java 3d 导入obj模型的贴图(即添加自定义纹理)怎么实现?
用three.js实现3D模型的展示(2)
    除了上次说的场景、摄影机、渲染器与模型外,我还加了这么几个为了美观的东西:光(一个环境光与几个点光源)、一个衬托模型的灰色平面以及附着在平面上做参考的网格。代码如下: var ambiColor = "#0c0c0c";       var ambientLight = new THREE.AmbientLight(ambiColor);       scene.add(ambie...
3D模型导入wpf
solidworks画好的3d模型分块导入wpf,再从wpf组装,可通过修改角度和偏移实现动画效果
导入3d模型
ios 中加载3d模型,支持obj格式
用three.js实现3D模型的展示(1)
     我个人是初步粗略地学习了html,css,js后,再大致了解一下three.js,然后边学边做的。     three.js官网上的入门介绍让人很好地理解了three.js工作时大致感觉:一种类似于标记语言的东西。有场景,摄像机,材料,渲染器等一系列已经成型的具体事物,你需要做的仅仅是调用它们,就像使用游戏引擎一样。     需要注意的是,在一个html中调用three.js时,一定要注...
3d模型导入问题
我是用opengl将3d模型导入,利用VC.NET的界面rnrn可是,我导入的模型总是有点变形,不知道怎么回事?是opengl设置的不对么?rnrn有人跟我说可能是OnSize中的窗口设置不对,我也不知道怎么改,请大家帮我一下rnrn还有这个帖子我不知道应该发到那个版面?好像没有opengl的专区啊rn所以,请版主不要删啊!!谢谢rnrnvoid COBJLoaderView::OnSize(UINT nType, int cx, int cy)rnrn CView::OnSize(nType, cx, cy);rnrn // TODO: Add your message handler code herern if(cy==0)rn rn cy=1;rn rn glViewport(0, 0, cx, cy);rn glMatrixMode(GL_PROJECTION);//选择投影矩阵rn glLoadIdentity();//重置投影矩阵初始化工程矩阵rn gluPerspective(45.0f,(GLfloat)cx/(GLfloat)cy,0.1f,3000.0f);rn glMatrixMode(GL_MODELVIEW);//选择模型观察矩阵rn glLoadIdentity();// 重置模型观察矩阵 rnrnrnrn我想帖个效果图,可是总是需要网络图片,所以就不帖了。、rn我导入了一个直升机的模型,出来以后机身变宽了,螺旋桨很长,感觉一点都不成比例
UGUI上展示3d模型
如何在UGUI的panel前面展示3D物体。 1、首先创建UI背景,再将要展示的3d物体拖到UI背景前 在scene下的效果,这就是我们想要展示在Game视图中的效果 可是在game视图中却没有显示我们想显示的Cube 2、接下来,使Cube的Layer和背景一样为UI层, 3、在将我们的主相机culling Mask改为UI,如果你还想渲染其他层的物体,可以根据需要该为
UI上展示3d模型
好记性不如烂笔头,记一下方便以后翻阅。 在一些游戏中有些界面需要展示3d模型,并且可以进行旋转等操作,例如装备展示,英雄信息等界面,一方面要展示UI信息,一方面要展示角色模型。解决这种问题最简单粗暴的就是直接设置两个摄像机,每一个UICamera,一个3d模型Camera,然后摄像机成像进行叠加,但是这样的话可能有一些UI层级的问题,今天文章记录的是另一种方式来展示3d模型。 创建一个Rend...
3d衣服模型 精细模型 用于展示
3d衣服模型 精细模型 用于展示衣服效果 很不错的精模
3D数据中心机房WEB展示
一种3D机房的WEB展示界面,有相应的HTML代码,js文件,CSS文件,图片以及json数据。
导入osm数据并生成城市模型
CityEngine2016的新功能为我们提供了生成真实城市场景的可能,数据通过新功能getmapdata来获取,无论是栅格数据还是矢量数据都能够轻松的获得,这样我们再通过CityEngine强大的规则文件CGA驱动就可以生成城市的模型。
opengl 游戏开发 3D模型导入
opengl 游戏开发 3D模型导入 3DS_Load
如何将3D模型导入VS
介绍了将3d模型转换为xaml文件的方法!
OpenGL导入3D模型的准备工作
这篇文章讲述了用OpenGL导入3D模型的准备
3D模型-数据分类
本课程带领完全没有基础的人学习OpenGL,打好图形学基础。
怎么在ASP.NET WEB页中实现导入3D动画
用的是C#语言
网络访问数据并展示
权限: uses-permission android:name="android.permission.INTERNET">uses-permission> uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE">uses-permission> uses-permission android:name="
java实现数据分页展示
java实现分页显示数据分页分页分类分页实现大体流程实现 分页 在开发中我们经常需要从后端查询数据到前端页面展示,当我们的数据很多的时候就可以使用到分页技术,会使得我们的数据显示更加美观合理。 分页分类 有两种分页方式: “假分页” 其实就是采用前端技术对数据进行分页。当前端页面请求后台时将所有符合条件数据全部查询出来响应给前端,在前端通过一些技术对查询出来的数据进行分页。这种方式在数据量较小时...
tensorflow导入模型的数据
今天遇到了很多弱智问题, 都是新手才会犯的错误, 可能不够全面, 因为我在遇到了问题的时候只是考虑如何解决它, 而没有仔细思考问题是如何发生的. 问题一 首先, 我训练了一个神经网络的模型, 得到了权值W和偏移值b. 一开始我想直接在模型训练的过程中得到向量的低维表示(多么弱智的想法), 后来发现tensorflow是并行计算的, 而且每次的训练集好像是随机的, 因此, 我本来输入的数据只有1...
arcgis_pro导入3d模型并发布三维场景
请勿在未经授权的情况下上传任何涉及著作权侵权的资源,除非该资源完全由您个人创作
three.js实现3D模型
案例完成过程中,遇见问题,可以从网站https://discourse.threejs.org查询解决办法 (一)成功案例一 1.效果图 2.代码如下 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title&...
JAVA调用3D模型
有人用过JAVA调用3D模型吗?或者是用JAVA 3D技术绘制人物的?rn有用过的能提供点相关的信息吗?小弟在这里谢谢了.rnrn分不在多有心就行/rnrn大家新年好.
3D模型文件动态展示demo
在该demo中展示了如何用jsc3d.js等插件在前台页面中展示3D模型文件,里边有相关代码及文档。
Android代码-安卓设备展示STL 3D模型
STL文件解析 去年一个关于3D打印的项目里用到 趁着这几天有时间 弄出个展示STL文件格式的demo 很感谢github上另一个分享者的STLViewer项目,本项目是在其代码的原有基础上进行修改的 ,优化了一些东西,修复了展示卡顿,展示不全,展示绘制三角时法线等等问题,增加了适配屏幕的矫正功能。 支持 STl 两种文件格式 ASCII格式和二进制格式 STL格式简介 ASCII格式 ASCII码格式的STL文件逐行给出三角面片的几何信息,每一行以1个或2个关键字开头。 在STL文件中的三角面片的信息单元 facet 是一个带矢量方向的三角面片,STL三维模型就是由一系列这样的三角面片构成。 整个STL文件的首行给出了文件路径及文件名。 在一个 STL文件中,每一个facet由7 行数据组成, facet normal 是三角面片指向实体外部的法矢量坐标, outer loop 说明随后的3行数据分别是三角面片的3个顶点坐标,3顶点沿指向实体外部的法矢量方向逆时针排列。[1] ASCII格式的STL 文件结构如下: 明码://字符段意义 solidfilenamestl//文件路径
SolidWorks设计PCB 3D模型展示
-
web worker+highcharts动态实现可视化数据展示
web worker+highcharts动态实现可视化数据展示 模块局部定时刷新,轮转翻页 worker 实时通信,获取数据,重构highcharts-dom //以下是worker.js部分代码,如需调用ajax,需构建虚拟dom---jquery.nodom.js importScripts("jquery.nodom.js"); onmessage = function(event){
threejs制作3d模型展示网页
1.在建模软件中制作好模型与贴图 导出obj 或 fbx 均可 2.打开浏览器输入https://threejs.org/editor/ 进入threejs官网提供的网络编辑器 将模型拖入视图中 3.在视图中选中模型,在右侧选择materal添加贴图,不懂的英文自行百度 (有时添加贴图后,模型没有变化,无需理会,导出后会显示正常,除非贴图放错) 4.添加灯光
UI界面上展示多个3D模型
详细描述查看https://blog.csdn.net/weixin_41843959/article/details/80944478
android怎么在工程中展示和控制3d模型
请问各位大神,怎么在android工程中展示3d模型,并且能够控制它,我原先是想用u3d做的,不过u3d好像都是做游戏比较多,而且打开的时候比较慢,还会有u3d的logo,控制模型运动好像也比较麻烦,除了用u3d之外还有没有什么别的方法????
3D扫描仪: 快速获得3D模型数据
3D扫描仪
如何实现网页上3D模型的展示和浏览?
想在网页上实现3D模型的加载和展示,带有交互操作。该怎么实现?webGL?该怎么做?rnrn 类似于下面的网站:https://sketchfab.com/
markdown编辑器
功能快捷键 撤销:Ctrl/Command + Z 重做:Ctrl/Command + Y 加粗:Ctrl/Command + Shift + B 斜体:Ctrl/Command + Shift + I 标题:Ctrl/Command + Shift + H 无序列表:Ctrl/Command + Shift + U 有序列表:Ctrl/Command + Shift + O 检查列表:Ctrl/...
Qt与java web通过数据库实现数据展示同步
程序运行截图如下:   逻辑: Qt修改数据库,java通过Hibernate读取数据库,然后显示,前端通过计时器实现不点刷新就能获取数据!   Qt源码如下: widget.h #ifndef WIDGET_H #define WIDGET_H #include <QWidget> #include <QSqlDatabase> QT_BEGIN_...
3D模型-生成OpenGL数据
本课程带领完全没有基础的人学习OpenGL,打好图形学基础。
Flex利用as3xls-swc导入Execl并读入展示数据
ceshi.xls数据格式如下所示:  flex实现如下: <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xm...
pull解释数据并展示
import java.io.ByteArrayInputStream; import java.io.InputStream; import java.util.ArrayList; import java.util.List; import me.maxwin.view.XListView; import me.maxwin.view.XListView.IXListViewLi
基于OpenGL和MFC的3D模型导入和读取
这个程序是在MFC的框架下 构建OPENGL场景,并在OPenGL 场景中导入.3DS格式的3D模型,程序中的很多代码可以直接拿来运用到自身的程序中,非常方便
3D模型obj文件导入渲染光照贴图
3D模型obj文件导入渲染光照贴图 opengl obj 着色器