立方体

用DirectX实现魔方(二)

六眼飞鱼酱① 提交于 2019-12-31 02:00:56
这篇说一下如何构造魔方,主要包括魔方几何体的构造及纹理贴图。以下论述皆以三阶魔方为例,三阶魔方共有3 x 3 x 3 = 27个小立方体。 构造魔方 在第一篇里面说过,最初模型用的是微软的.x文件格式,由于魔方要实现按层旋转,所以不能将整个模型做成一个.x文件,只能分成若干个小立方体,每个立方体对应一个.x文件。这导致在发布程序的时候也要发布这些模型文件,而且.x文件已经逐渐为微软遗弃,所以就干脆不用了,自己画吧。魔方由27个小立方体构成,所以只要绘制一个小立方体,并复制27分,再将这个27个小立方体按一定顺序堆叠在一起,最后贴上纹理,就可以构成一个完整的魔方了。 一个小立方体包含六个面,由于每个面的纹理可能不同,所以需要逐个面绘制,这样可以方便的为每个面单独设置纹理。 一个面由两个三角形构成,这里采用TriangleStrip的方式进行绘制,只需要指定四个顶点即可,如果是TriangleList,则需要六个顶点。 顶点结构 下面来分析一下顶点的数据结构,首先要有一个位置坐标(位置是一个顶点必须要包含的信息),其次,为了添加光照效果,还需要一个法向量。最后,为了实现纹理贴图,需要有纹理坐标。所以一个完整的顶点有以下三部分构成: 位置 法向量 纹理坐标 用一个结构体来表示顶点,如下: struct Vertex { float x, y, z; // position float

第三篇:数据仓库系统的实现与使用(含OLAP重点讲解)

有些话、适合烂在心里 提交于 2019-12-25 00:09:34
第三篇:数据仓库系统的实现与使用(含OLAP重点讲解) 转载自:https://www.cnblogs.com/muchen/p/5318808.html 前言 上一篇 重点讲解了数据仓库建模,它是数据仓库开发中最核心的部分。然而完整的数据仓库系统还会涉及其他一些组件的开发,其中最主要的是ETL工程,在线分析处理工具(OLAP)和商务智能(BI)应用等。 本文将对这些方面做一个总体性的介绍(尤其是OLAP),旨在让读者对数据仓库的认识提升到一个全局性的高度。 回到顶部 创建数据仓库 数据仓库的创建方法和数据库类似,也是通过编写DDL语句来实现。在 过去,数据仓库系统大都建立在RDBMS上,因为维度建模其实也可以看做是关系建模的一种。但如今随着开源分布式数据仓库工具如Hadoop Hive,Spark SQL的兴起,开发人员往往将建模和实现分离。使用专门的建模软件进行ER建模、关系建模、维度建模,而具体实现则在Hive/Spark SQL下进行。没办法,谁让这些开源工具没有提供自带的可视化建模插件呢:-(。 话说现在的开源分布式工具都是"散兵作战",完成一个大的项目要组合N个工具,没有一个统一的开发平台。还有就是可视化效果比较差,界面很难看或者没有界面。个人建议在资金足够的情况下尽量使用商用大数据平台来开发,虽然这些商用产品广告打得多少有点夸张,但是它们的易用性做的是真好

详解用CSS绘制3D旋转立方体

蓝咒 提交于 2019-12-23 21:26:49
CSS3D旋转立方体绝对是能充分代表这些年CSS发展新高度的典型案例。从一种只是简单的颜色和尺寸渲染的标记符,CSS现在已经变成了一种能够创造出复杂的、具有艺术感染力的视觉效果的 编程语言 。动画效果的生成变得非常的简单易行。 遗憾的是,目前网上的关于CSS立方体的制作教程都有些复杂,在立方体的基础上混合了其它视觉效果,所以,我决定写这篇文章,只涉及如何创造出基本的CSS立方体的讲解。这篇文章中使用的例子来自于CodePen上Mircea Georgescu的漂亮 杰作 。 观看演示 HTML 这个立方体首先是包裹在一个 div 里: <div> <div> <div>前</div> <div>后</div> <div>上</div> <div>下</div> <div>左</div> <div>右</div> </div> </div> 1 2 3 4 5 6 7 8 9 10 <div> <div> <div> 前 </div> <div> 后 </div> <div> 上 </div> <div> 下 </div> <div> 左 </div> <div> 右 </div> </div> </div> 而立方体的每个面都用一个 div 元素表示。你可以想象出,我们将使用CSS将它们定位到正确的空间位置上。 CSS 我们一步一步的进行讲解。首先要注意的是包裹这个立方体的 div

Apache kylin 入门

我怕爱的太早我们不能终老 提交于 2019-12-18 10:57:57
本篇文章就概念、工作机制、数据备份、优势与不足4个方面详细介绍了Apache Kylin。 Apache Kylin 简介 1. Apache kylin 是一个开源的海量数据分布式预处理引擎。它通过 ANSI-SQL 接口,提供基于 hadoop 的超大数据集(TB-PB 级)的多维分析(OLAP)功能。 2. kylin 可实现超大数据集上的亚秒级(sub-second latency)查询。 1)确定 hadoop 上一个星型模式的数据集。 2)构建数据立方体 cube。 3)可通过 ODBC, JDBC,RESTful API 等接口在亚秒级的延迟内查询相 Apache Kylin 核心概念 1. 表(Table ):表定义在 hive 中,是数据立方体(Data cube)的数据源,在 build cube 之前,必须同步在 kylin 中。 2. 模型(model): 模型描述了一个星型模式的数据结构,它定义了一个事实表(Fact Table)和多个查找表(Lookup Table)的连接和过滤关系。 3. 立方体(Cube):它定义了使用的模型、模型中的表的维度(dimension)、度量(measure , 一般指聚合函数,如:sum、count、average 等)、如何对段分区( segments partition)、合并段(segments auto

前端手写自动旋转3D立方体

老子叫甜甜 提交于 2019-12-17 21:16:26
上一篇咱们写了一个3D的立方体,但是不能自己旋转,触摸之后可以进行旋转,现在是升级版的是自动旋转的立方体 下面直接是代码 < template > < div > < div class = "top" > 懵懵懂懂 < / div > < div class = "wrap" > < div class = "cube" > < div class = "out-front" > < img src = "./../assets/images/psb (11).jpg" alt = "" > < / div > < div class = "out-back" > < img src = "./../assets/images/psb (12).jpg" alt = "" > < / div > < div class = "out-left" > < img src = "./../assets/images/psb (19).jpg" alt = "" > < / div > < div class = "out-right" > < img src = "./../assets/617/微信图片_20191213093412.jpg" alt = "" > < / div > < div class = "out-top" > < img src = "./..

数据立方体----维度与OLAP

爷,独闯天下 提交于 2019-12-13 18:44:46
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 数据立方体   关于数据立方体(Data Cube),这里必须注意的是数据立方体只是多维模型的一个形象的说法。立方体其本身只有三维,但多 维模型不仅限于三维模型,可以组合更多的维度,但一方面是出于更方便地解释和描述,同时也是给思维成像和想象的空间;另一方面是为了与传统关系型数据库的二维表区别开来,于是就有了数据立方体的叫法。所以本文中也是引用立方体,也就是把多维模型以三维的方式为代表进行展现和描述,其实上Google图片搜索“OLAP”会有一大堆的数据立方体图片,这里我自己画了一个: OLAP    OLAP(On-line Analytical Processing,联机分析处理) 是在基于数据仓库多维模型的基础上实现的面向分析的各类操作的集合。可以比较下其与传统的OLTP(On-line Transaction Processing,联机事务处理)的区别来看一下它的特点: OLAP与OLTP 数据处理类型 OLTP OLAP 面向对象 业务开发人员 分析决策人员 功能实现 日常事务处理 面向分析决策 数据模型 关系模型 多维模型 数据量 几条或几十条记录 百万千万条记录 操作类型 查询、插入、更新、删除 查询为主 OLAP的类型  

C#开发Unity游戏教程之Scene视图与脚本的使用

两盒软妹~` 提交于 2019-12-07 20:12:40
C#开发Unity游戏教程之Scene视图与脚本的使用 Unity中Scene 视图的快捷操作 Scene 视图是开发者开发游戏时,操作最频繁的视图。因为一旦一个游戏对象被添加到游戏的场景中,就需要首先使用鼠标为这个游戏对象设置出合适的状态。而且开发者还需要多角度的观察游戏场景中的各游戏对象。基于以上的原因, Unity 提供了很多快捷操作,支持开发者对 Scene 视图所做的各种操作,常见的操作方式有: 直接按下键盘上的 Q 、 W 、 E 、 R 键,即可选中 Unity 左上角,工具栏上的 4 个按钮,且按钮与按键一一对应,省去了开发者使用鼠标点击的麻烦。 使用鼠标的滚轮,可以控制 Scene 视图“窗口”与各游戏对象的远近,如图 2-14 所示,且向上滚动靠近,向下滚动远离。 图 2-14 使用鼠标的滚轮,控制 Scene 视图与场景中各游戏对象距离的远近 使用鼠标双击 Hierarchy 视图上的游戏对象名,场景视图会移动,直到对应的对象处于场景视图的中间,如图 2-15 所示。当开发者在场景中找不到对应的游戏对象时,可以使用这种方法快速找到。 图 2-15 鼠标双击对象名,场景视图速度定位到对应对象,且被显示在场景视图的中央 在场景视图里,按下鼠标中间的按钮(或滚轮),鼠标变成了 ,然后移动鼠标,可以任意移动场景 。 , 如图 2-16 所示 , 。其

CSS动画之旋转魔方轮播

生来就可爱ヽ(ⅴ<●) 提交于 2019-12-05 17:29:21
很久没有回头来复习CSS方面的知识了, 正好又到了月底写文章的deadline...... 所以这次选择了详细巩固一下CSS3动画有关的知识点,因为之前只是用过一些属性并没有深究细节。 在我自己写完这篇文章的时候, 才觉得CSS确实能够实现很多炫酷的效果。 本篇文章demo的完成自己也是查了很多相关知识点和借鉴了一些文章中的内容。但不管怎样, 作为一个前端菜鸟, 总是在不断学习中成长的。这句话写在这里自己心里也安心一些。(逃...... 最终的demo效果地址 下面我将一步一步详解如何利用纯CSS实现一个旋转魔方轮播的效果。 总的来说我们需要实现以下两个主要功能: 构建一个能够旋转的立方体 让立方体拥有基本轮播所具有的特性 但在完成以上两点之前我们需要再次了解或熟悉一下实现其功能的CSS3基础知识点: transition transform perspective preserve-3d animation transition属性 --- 过渡效果 transition: property duration timing-fucntion delay; 这个属性应该都很熟悉, 也不过多讲, 只是列出其所具有的所有子属性。 过渡属性 --- 过渡持续时间 --- 过渡函数(曲线) --- 过渡延迟 transition-timing-function: linear|ease

CSS3 双层立方体 正方体

一世执手 提交于 2019-12-04 19:07:19
这个东东,虽然好像找不到应用场景,但是好喜欢的说 HTML代码: 1 <!-- 立方体容器 --> 2 <div class="box_case"> 3 <!-- 小立方体 --> 4 <div class="small_box"><img src="./IMG/1A.png" ></div> 5 <div class="small_box"><img src="./IMG/1B.png" ></div> 6 <div class="small_box"><img src="./IMG/1L.png" ></div> 7 <div class="small_box"><img src="./IMG/1O.png" ></div> 8 <div class="small_box"><img src="./IMG/1V.png" ></div> 9 <div class="small_box"><img src="./IMG/1E.png" ></div> 10 11 <!-- 大立方体 --> 12 <div class="big_box"><img src="./IMG/2A.png" ></div> 13 <div class="big_box"><img src="./IMG/21.png" ></div> 14 <div class="big_box"><img src=".

页面旋转立方体图片

自作多情 提交于 2019-12-03 17:02:01
<style> /*最外层容器样式*/ .wrap { width: 100px; height: 100px; margin: 150px; position: absolute; bottom: 100px; right: 80px; } /*包裹所有容器样式*/ .cube { width: 50px; height: 50px; margin: 0 auto; transform-style: preserve-3d; transform: rotateX(-30deg) rotateY(-80deg); animation: rotate linear 20s infinite; } @-webkit-keyframes rotate { from { transform: rotateX(0deg) rotateY(0deg); } to { transform: rotateX(360deg) rotateY(360deg); } } .cube div { position: absolute; width: 200px; height: 200px; opacity: 0.8; transition: all .4s; } /*定义所有图片样式*/ .pic { width: 200px; height: 200px; } .cube .out_front {