精华内容
参与话题
问答
  • 深入浅出Unity3D——第一篇

    万人学习 2015-02-05 09:58:48
    Unity3D基础知识、游戏算法一网打尽。
  • 抖音上很火的3D立体动态相册实现代码!

    万次阅读 多人点赞 2019-11-26 13:30:32
    圣诞节快到了,是不是要给女朋友或者正在追求的妹子一点小惊喜呢,今天这篇博客就分享下前端代码如何实现3D立体动态相册。赶紧学会了,来制作属于我们程序员的浪漫吧!先上效果图,来引起下你们的兴趣。 正文: ...

    前言:

    圣诞节快到了,是不是要给女朋友或者正在追求的妹子一点小惊喜呢,今天这篇博客就分享下前端代码如何实现3D立体动态相册。赶紧学会了,来制作属于我们程序员的浪漫吧!先上效果图,来引起下你们的兴趣。

     正文:

    一、新建一个index.html的文件,代码如下

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>纯CSS实现鼠标经过3D立体动态展示图片特效代码</title>
    <link type="text/css" href="css/style.css" rel="stylesheet" />
    </head>
    <body>
    <div class="box">
    	<ul class="minbox">
    		<li></li>
    		<li></li>
    		<li></li>
    		<li></li>
    		<li></li>
    		<li></li>
    	</ul>
    	<ol class="maxbox">
    		<li></li>
    		<li></li>
    		<li></li>
    		<li></li>
    		<li></li>
    		<li></li>
    	</ol>
    </div>
    </body>
    </html>

    二、css样式的代码

    @charset "utf-8";
    *{
    	margin:0;
    	padding:0;
    }
    body{
    	max-width: 100%;
    	min-width: 100%;
    	height: 100%;
    	background-size: cover;
    	background-repeat: no-repeat;
    	background-attachment: fixed;
    	background-size:100% 100%;
    	position: absolute;
    	margin-left: auto;
    	margin-right: auto;
    }
    li{
    	list-style: none;
    }
    .box{
    	width:200px;
    	height:200px;
    	background-size: cover;
    	background-repeat: no-repeat;
    	background-attachment: fixed;
    	background-size:100% 100%;
    	position: absolute;
    	margin-left: 42%;
    	margin-top: 22%;
    	-webkit-transform-style:preserve-3d;
    	-webkit-transform:rotateX(13deg);
    	-webkit-animation:move 5s linear infinite;
    }
    .minbox{
    	width:100px;
    	height:100px;
    	position: absolute;
    	left:50px;
    	top:30px;
    	-webkit-transform-style:preserve-3d;
    }
    .minbox li{
    	width:100px;
    	height:100px;
    	position: absolute;
    	left:0;
    	top:0;
    }
    .minbox li:nth-child(1){
    	background: url(../img/01.png) no-repeat 0 0;
    	-webkit-transform:translateZ(50px);
    }
    .minbox li:nth-child(2){
    	background: url(../img/02.png) no-repeat 0 0;
    	-webkit-transform:rotateX(180deg) translateZ(50px);
    }
    .minbox li:nth-child(3){
    	background: url(../img/03.png) no-repeat 0 0;
    	-webkit-transform:rotateX(-90deg) translateZ(50px);
    }
    .minbox li:nth-child(4){
    	background: url(../img/04.png) no-repeat 0 0;
    	-webkit-transform:rotateX(90deg) translateZ(50px);
    }
    .minbox li:nth-child(5){
    	background: url(../img/05.png) no-repeat 0 0;
    	-webkit-transform:rotateY(-90deg) translateZ(50px);
    }
    .minbox li:nth-child(6){
    	background: url(../img/06.png) no-repeat 0 0;
    	-webkit-transform:rotateY(90deg) translateZ(50px);
    }
    .maxbox li:nth-child(1){
    	background: url(../img/1.png) no-repeat 0 0;
    	-webkit-transform:translateZ(50px);
    }
    .maxbox li:nth-child(2){
    	background: url(../img/2.png) no-repeat 0 0;
    	-webkit-transform:translateZ(50px);
    }
    .maxbox li:nth-child(3){
    	background: url(../img/3.png) no-repeat 0 0;
    	-webkit-transform:rotateX(-90deg) translateZ(50px);
    }
    .maxbox li:nth-child(4){
    	background: url(../img/4.png) no-repeat 0 0;
    	-webkit-transform:rotateX(90deg) translateZ(50px);
    }
    .maxbox li:nth-child(5){
    	background: url(../img/5.png) no-repeat 0 0;
    	-webkit-transform:rotateY(-90deg) translateZ(50px);
    }
    .maxbox li:nth-child(6){
    	background: url(../img/6.png) no-repeat 0 0;
    	-webkit-transform:rotateY(90deg) translateZ(50px);
    }
    .maxbox{
    	width: 800px;
    	height: 400px;
    	position: absolute;
    	left: 0;
    	top: -20px;
    	-webkit-transform-style: preserve-3d;
    	
    }
    .maxbox li{
    	width: 200px;
    	height: 200px;
    	background: #fff;
    	border:1px solid #ccc;
    	position: absolute;
    	left: 0;
    	top: 0;
    	opacity: 0.2;
    	-webkit-transition:all 1s ease;
    }
    .maxbox li:nth-child(1){
    	-webkit-transform:translateZ(100px);
    }
    .maxbox li:nth-child(2){
    	-webkit-transform:rotateX(180deg) translateZ(100px);
    }
    .maxbox li:nth-child(3){
    	-webkit-transform:rotateX(-90deg) translateZ(100px);
    }
    .maxbox li:nth-child(4){
    	-webkit-transform:rotateX(90deg) translateZ(100px);
    }
    .maxbox li:nth-child(5){
    	-webkit-transform:rotateY(-90deg) translateZ(100px);
    }
    .maxbox li:nth-child(6){
    	-webkit-transform:rotateY(90deg) translateZ(100px);
    }
    .box:hover ol li:nth-child(1){
    	-webkit-transform:translateZ(300px);
    	width: 400px;
    	height: 400px;
    	opacity: 0.8;
    	left: -100px;
    	top: -100px;
    }
    .box:hover ol li:nth-child(2){
    	-webkit-transform:rotateX(180deg) translateZ(300px);
    	width: 400px;
    	height: 400px;
    	opacity: 0.8;
    	left: -100px;
    	top: -100px;
    }
    .box:hover ol li:nth-child(3){
    	-webkit-transform:rotateX(-90deg) translateZ(300px);
    	width: 400px;
    	height: 400px;
    	opacity: 0.8;
    	left: -100px;
    	top: -100px;
    }
    .box:hover ol li:nth-child(4){
    	-webkit-transform:rotateX(90deg) translateZ(300px);
    	width: 400px;
    	height: 400px;
    	opacity: 0.8;
    	left: -100px;
    	top: -100px;
    }
    .box:hover ol li:nth-child(5){
    	-webkit-transform:rotateY(-90deg) translateZ(300px);
    	width: 400px;
    	height: 400px;
    	opacity: 0.8;
    	left: -100px;
    	top: -100px;
    }
    .box:hover ol li:nth-child(6){
    	-webkit-transform:rotateY(90deg) translateZ(300px);
    	width: 400px;
    	height: 400px;
    	opacity: 0.8;
    	left: -100px;
    	top: -100px;
    }
    @keyframes move{
    	0%{
    		-webkit-transform: rotateX(13deg) rotateY(0deg);
    	}
    	100%{
    		-webkit-transform:rotateX(13deg) rotateY(360deg);
    	}
    }
    

    三、文件的目录结构,把css文件放到css文件夹里,图片放到img文件夹里。

    四、图片尺寸不会修改的,可以选择使用美图秀秀网页版很简单

    五、容易出现的问题 ,图片展示不全或展示的方向不对

    1.图片尺寸需要修改 (解决展示不全的情况)

    上图是我的图片文件夹里放的图片 ,首先01-06编号命名的图片尺寸是100x100px的大小的,1-6编号是400x400px,如果效果想展示最佳,100x100px的图片是以头部特写的照片最好,因为01-06是立体照片内部小正方体的照片,1-6编号是外部正方体的照片。

    2.图片的方向需要修改(解决头朝下的问题)

    修改的方向如上图展示所示,比如第三张头就应该朝下,否则形成的效果图像会出现头是倒着的情况。

    六、放一下动态效果图

    总结:

     生活虽然总有辛酸,但是我们不应该减少去创造生活的乐趣,不断寻找属于自己的那份快乐,才应该是我们生活的态度。如果是非技术的朋友看到这篇博客,发现不会弄,可以直接留言要代码包,自己替换下图片就可以啦。

    我是阿达,一名喜欢分享知识的程序员,时不时的也会荒腔走板的聊一聊电影、电视剧、音乐、漫画,这里已经有723位小伙伴在等你们啦,感兴趣的就赶紧来点击关注我把,哪里有不明白或有不同观点的地方欢迎留言!

    3D代码包的下载地址:https://pan.baidu.com/s/1euEWolHt8aFxi0xLhoYwJA

    提取码请关注公众号,回复3D相册代码获取提取码:

     

    展开全文
  • 程序员给女朋友做的精美3D相册

    万次下载 热门讨论 2014-04-29 10:28:28
    程序员给女朋友用HTML5制作的3D相册 感觉挺漂亮。 整理里一个自己可以换相片
  • 在自己动手写3D库之前,我一直使用VisPy应对三维需求。这是一个高性能的可交互的2D/3D可视化函数库,但在后端显示上,我始终不能得心应手地驾驭它。2019年的元旦假期,我萌生了自己写3D应用库的念头,并立即付诸行动...

    1. 前言

    在自己动手写3D库之前,我一直使用VisPy应对三维需求。这是一个高性能的可交互的2D/3D可视化函数库,但在后端显示上,我始终不能得心应手地驾驭它。2019年的元旦假期,我萌生了自己写3D应用库的念头,并立即付诸行动。三周之后,WxGL诞生。WxGL是一个基于PyOpenGL的三维数据展示库,以wx为显示后端,以加速渲染为第一追求目标。借助于WxPython这个后端,WxGL可以很好的融合Matplotlib等其他数据展示技术。

    2. 安装

    我的GitHub上有WxGL模块的完整源码文件,也可以直接使用以下命令安装我已经打包好的whl安装文件,目前的版本是0.5.4,如有必要,我会继续更新。

    python -m pip install -i https://test.pypi.org/simple/ wxgl
    

    WxGL依赖PyOpenGL,因此在安装WxGL之前,请先安装PyOpenGL。不过,如果直接使用pip安装的话,可能会有一些麻烦。当初我这样安装之后,运行 OpenGL 代码,得到了这样的错误信息:

    NullFunctionError: Attempt to call an undefined function glutInit, check for bool(glutInit) before calling
    

    原来,pip 默认安装的是32位版本的PyOpenGL,而我的操作系统是64位的。建议点击这里下载适合自己的版本,直接安装.whl文件。最终我是这样安装的:

    pip install PyOpenGL-3.1.3b2-cp37-cp37m-win_amd64.whl
    

    3. 类和方法

    WxGL的容器名为WxGLScene,我称其为场景。每个场景可以使用addRegion()生成多个WxGLRegion对象,我称其为视区。在视区内可以创建模型,每个模型由一个或多个组件构成——所谓组件,可以理解为子模型。WxGLRegion提供了以下方法创建模型或组件:

    • WxGLRegion.drawText() 绘制文本
    • WxGLRegion.drawPoint() 绘制点
    • WxGLRegion.drawLine() 绘制线段
    • WxGLRegion.drawSurface() 绘制曲面
    • WxGLRegion.drawMesh() 绘制网格
    • WxGLRegion.drawVolume() 绘制体数据
    • WxGLRegion.drawAxes() 绘制坐标
    • WxGLRegion.drawColorBar() 绘制绘制colorBar

    4. 应用示例

    接下来,我们使用WxGL来演示一下,如何将下面这张全球等经纬投影模式的疫情地图,变成一个可以任意缩放和旋转的三维地球。全部代码,包括注释,刚刚40行。里面用到了一个矢量字库文件,请根据自己的运行环境修改路径。疫情地图,可以下载本文插图,也可以参考我的另一篇博文《Python实战:抓肺炎疫情实时数据,画2019-nCoV疫情地图》,自行生成更高分辨率的疫情地图。

    2019-nCoV疫情地图(全球等经纬投影模式):
    在这里插入图片描述

    earth_2019nCoV.py

    # -*- coding: utf-8 -*-
    
    import wx
    import numpy as np
    from PIL import Image
    
    from wxgl.scene import *
    from wxgl.colormap import *
    
    class mainFrame(wx.Frame):
        '''程序主窗口类,继承自wx.Frame'''
        
        def __init__(self):
            wx.Frame.__init__(self, None, -1, '地球模型上的2019-nCoV疫情地图', style=wx.DEFAULT_FRAME_STYLE)
            self.Maximize()
            
            # 从等经纬地图上读取经纬度网格上的每一个格点的颜色
            c = np.array(Image.open('res/e0.jpg'))/255
            
            # 生成和等经纬地图分辨率一致的经纬度网格,计算经纬度网格上的每一个格点的空间坐标(x,y,z)
            lats, lons = np.mgrid[np.pi/2:-np.pi/2:complex(0,c.shape[0]), 0:2*np.pi:complex(0,c.shape[1])]
            x = np.cos(lats)*np.cos(lons)
            y = np.cos(lats)*np.sin(lons)
            z = np.sin(lats)
            
            self.scene = WxGLScene(self, r"C:\Windows\Fonts\simfang.ttf", bg=[0,0,0,0])
            self.scene.setPosture(elevation=0, azimuth=120, save=True)
            self.master = self.scene.addRegion((0,0,1,1))
            self.master.drawMesh('earth', x, y, z, c)
            self.master.update()
            
    class mainApp(wx.App):
        def OnInit(self):
            self.Frame = mainFrame()
            self.Frame.Show()
            return True
    
    if __name__ == "__main__":
        app = mainApp()
        app.MainLoop()
    

    运行效果如下:
    在这里插入图片描述

    更为复杂的应用,请参考我的另一篇博文:《wxPython + pyOpenGL,打造三维数据分析的利器》

    展开全文
  • 本课程是Unity3d 初级系列的第一篇,为了能让更多的初学者更方便的掌握unity3d,再这里我将全面而详细的讲解untiy3d游戏引擎。
  • python3D绘图Axes3D函数详解

    万次阅读 2018-04-22 09:24:52
    Axes3D对象与使用projection ='3d'关键字的任何其他轴一样创建。 创建一个新的matplotlib.figure.Figure并为其添加一个类型为Axes3D的新轴:比如如下方法创建aximport matplotlib.pyplot as pltfrom mpl_toolkits....

    Axes3D对象与使用projection ='3d'关键字的任何其他轴一样创建。 创建一个新的matplotlib.figure.Figure并为其添加一个类型为Axes3D的新轴:

    比如如下方法创建ax

    import matplotlib.pyplot as plt
    from mpl_toolkits.mplot3d import Axes3D
    fig = plt.figure()

    ax = fig.add_subplot(111, projection='3d')

    1画线--Axes3D.plot(xs, ys, *args, **kwargs)

    注:xs,ys  x,y坐标的顶点  ,zs z值(s),对于所有点或者每个点都有一个值。zdir绘制二维集时,将哪个方向用作z('x','y'或'z')。

    2画散点图--Axes3D.scatter(xs, ys, zs=0, zdir='z', s=20, c=None, depthshade=True, *args, **kwargs)

    注:xs,ys为数据点的位置。, zs与xs和ys具有相同长度的数组或将所有点放在同一平面中的单个值。 缺省值是0。

    zdir绘制二维集时,将哪个方向用作z('x','y'或'z')。c一种颜色。 c可以是单色格式字符串,也可以是长度为N的颜色规范序列,也可以是使用通过kwargs指定的cmap和范数映射到颜色的N个数字序列。 请注意,c不应该是单个数字RGB或RGBA序列,因为它与要进行彩色映射的值数组难以区分。 c可以是其中行是RGB或RGBA的二维数组,但是,包括单行的情况下为所有点指定相同的颜色。

    # Fixing random state for reproducibility
    np.random.seed(19680801)
    def randrange(n, vmin, vmax):
        return (vmax - vmin)*np.random.rand(n) + vmin
    fig = plt.figure()
    ax = fig.add_subplot(111, projection='3d')
    n = 100
    # For each set of style and range settings, plot n random points in the box
    # defined by x in [23, 32], y in [0, 100], z in [zlow, zhigh].
    for c, m, zlow, zhigh in [('r', 'o', -50, -25), ('b', '^', -30, -5)]:
        xs = randrange(n, 23, 32)
        ys = randrange(n, 0, 100)
        zs = randrange(n, zlow, zhigh)
        ax.scatter(xs, ys, zs, c=c, marker=m)
    ax.set_xlabel('X Label')
    ax.set_ylabel('Y Label')
    ax.set_zlabel('Z Label')
    plt.show()

    3画曲面图---Axes3D.plot_surface(X, Y, Z, *args, **kwargs)

    注:cmap:彩图,X,Y,Z:2d阵列

    参考了官方文档

    展开全文
  • web3d交互社交网络站

    万次阅读 2020-03-25 21:54:00
    待续

    待续

    展开全文
  • Smart3D软件基本操作步骤

    万次阅读 多人点赞 2017-10-27 15:08:09
    1、打开smart3D的ContextCapture Center Master软件,界面如下: 2、点击新建工程,依次填入工程名称、工程目录后点击ok: 3、选择Photos选项卡,然后点击Add photos按钮,添加要建模的照片: 4、...
  • 用HTML+CSS代码制作3D旋转相册

    万次阅读 多人点赞 2018-09-19 21:37:53
    手打代码: &amp;lt;!DOCTYPE html&amp;gt; &amp;lt;html&amp;gt; &amp;lt;head lang=&quot;en&quot;&amp;gt; &amp;lt;meta charset=&...3D旋转&amp;lt;/title&
  • 3D图形理论

    万人学习 2017-01-15 21:10:20
    课程实现一套软3D,即不依赖任何第三方API(OpenGL,D3D,GDI)等。 课程从建立建立颜色缓冲区,绘制点,绘制线,绘制面,绘制图片,建立纹理,作图形的旋转,图像的混合,建立三维坐标系,实现模型矩阵,投影矩阵...
  • 每周更新unity3d视频教程,从入门到就业,官方unity3d培训,上千门实时更新课程,供学员在线观看学习,unity3d游戏开发,可以让学员随时随地学习! 免费网上学习unity3d自学教程,国内名师机构专业授课,O基础快速学习,1小时...
  • CC(Smart3D)),Pix4d,Photoscan,Inpho所有教程做了个汇总 已下为文章目录 由于文章较多,在CSDN中做单个超链接比较麻烦 所所以大家可以关注微信公众号—GIS前沿 关注后即会发送已下文章的链接 或者直接复制次链接...
  • 3dMax 制作动画技巧总结

    千次阅读 2017-01-11 18:24:39
    文章记录了使用3dMax制作角色动画时的一些流程和小技巧。
  • unity3d安卓打包教程

    千次阅读 2019-04-18 10:51:53
    unity3d安卓打包教程
  • 用html+CSS制作一个3D旋转相册

    千次阅读 多人点赞 2019-10-22 16:13:33
    前端html+css知识小应用 首先,我们要新建一个总的文件夹,文件夹... 然后,在images里面保存10张图片加1张背景图片(背景图片可以不设置),图片名字按顺序用1.jpg到10.jpg,背景图片这里用的star.jpg。如下图所示...
  • 3dmax2019是目前专业制图3dmax软件的最新版本,从软件界面、优化功能、VR场景、智能工具等都有不同程度的提升,使用起来极为方便,可以大大提升工作效率和制图质量; 【软件下载链接(百度网盘):...
  • 3D Machine Learning】3D Pose Estimation

    万次阅读 2019-12-14 19:14:46
    3D Pose Estimation Category-Specific Object Reconstruction from a Single Image (2014) [Paper] Viewpoints and Keypoints (2015) [Paper] Render for CNN: Viewpoint Estimation in Images Using CNNs Traine...
  • 3D Models Princeton Shape Benchmark (2003) [Link] 1,814 models collected from the web in .OFF format. Used to evaluating shape-based retrieval and analysis algorithms. Dataset for IKEA 3D models and ...
  • 3DMax制作下雨场景

    千次阅读 2014-07-25 14:33:55
    3DMax制作下雨场景
  • 制作一个简单3D相册

    千次阅读 2019-07-11 17:42:10
    - 用到的点: 旋转 2D 旋转 transform: rotate(值deg) deg 角度的单位 ...1、在要实现3D效果的块上 加transform-style:preserve-3D (声明) 2、在要实现3D效果的块的父元素上加一个镜头的距离...
  • Unity3D安装教程

    千次阅读 2017-02-20 10:55:56
    Unity官网下载链接 ...第一个为个人免费版,作为学习完全够用。... Unity3D安装 附属一些功能:Visual Studio为脚本编辑器必需安装;其他为导出插件,比如导出安卓应用,就选择安
  • 3D Model Synthesis/Reconstruction Parametric Morphable Model-based methods A Morphable Model For The Synthesis Of 3D Faces (1999) [Paper][Code] The Space of Human Body Shapes: Reconstruction and Par...
  • 使用Cocos2d-x 开发3D游戏

    万人学习 2015-08-12 14:34:10
    由CSDN知名博客讲师火云红孩儿创建的火云开发课堂正式开始讲授新的Cocos2d-x v3.7版本中的3D引擎功能模块!
  • 很多人都会Unity3D中调用网页中的js,反过来就一头雾水。 其实也很简单 在HTML中添加下面的代码: var u = new UnityObject2(); u.initPlugin(jQuery("#unityPlayer")[0], "XXX.unity3d");//XXX为生成出来的...
  • 3D Machine Learning】3D Scenes

    万次阅读 2019-12-14 19:14:46
    3D Scenes NYU Depth Dataset V2 (2012) [Link] 1449 densely labeled pairs of aligned RGB and depth images from Kinect video sequences for a variety of indoor scenes. SUNRGB-D 3D Object Detection Challe...
  • [size=medium]分享一个unity3d的网盘地址,各个版本挺全的。 unity3d官网的下载速度太慢,打算在这里把百度网盘的unity3d下载地址列一下,不断更新 unity3d 完整版本汇总下载:[url]...
  • HTML5 3D/CSS3 3D爱心动画项目实例源码

    千次下载 热门讨论 2014-08-20 11:30:37
    大家可以点解DEMO来看看。CSS3代码,对这些线条进行渲染,以便其有3D的视觉效果。很多div,主要是构造爱心的线条区域。
  • 3D立体相册,一个可旋转的立体相册

    万次阅读 2017-05-24 11:34:29
    11359.gif 主要功能:立体球体展示 可自行添加本地照片 可旋转,照片可放大 商城下载: App Store github下载 ...用的代码是用的云标签的code,代码略有改动 ...self.sphereView = [[YoungSphere alloc] ...
  • Open3D绘制3D坐标,绘制点云

    千次阅读 2019-10-10 10:18:02
    Open3D绘制3D坐标,绘制点云 # -*-coding: utf-8 -*- """ @Project: PyKinect2-OpenCV @File : open3d_test.py @Author : panjq @E-mail : pan_jinquan@163.com @Date : 2019-10-10 09:49:27 ""...
  • unity3d文件反编译工具

    千次下载 热门讨论 2011-06-23 17:33:39
    反编译 unity3d文件 点击'new project'选择要反编译的文件。 先点‘New project’选择unity3d文件,再点'Unpack Web Archrive in a directory'选择导出的文件夹。

空空如也

1 2 3 4 5 ... 20
收藏数 208,345
精华内容 83,338
关键字:

3d