文档库 最新最全的文档下载
当前位置:文档库 › 材质库文件 .mtl文件格式解析

材质库文件 .mtl文件格式解析

材质库文件 .mtl文件格式解析
材质库文件 .mtl文件格式解析

材质库文件 .mtl文件格式解析

分类:图形处理(图形学+openGL) 2012-03-29 21:13 334人阅读评论(0) 收藏举报

.mtl文件(Material Library File)是材质库文件,描述的是物体的材质信息,ASCII存储,任何文本编辑器可以将其打开和编辑。一个.mtl文件可以包含一个或多个材质定义,对于每个材质都有其颜色,纹理和反射贴图的描述,应用于物体的表面和顶点。

以下是一个材质库文件的基本结构:

newmtl mymtl_1

材质颜色光照定义

纹理贴图定义

反射贴图定义

newmtl mymtl_2

材质颜色光照定义

纹理贴图定义

反射贴图定义

newmtl mymtl_3

材质颜色光照定义

纹理贴图定义

反射贴图定义

……

注释:每个材质库可含多个材质定义,每个材质都有一个材质名。用newmtl mtlName来定义一个材质。对于每个材质,可定义它的颜色光照纹理反射等描述特征。主要的定义格式如下文所示:

////////////////////////////////////////////////

材质颜色光照

1。环境反射有以下三种描述格式,三者是互斥的,不能同时使用。

Ka r g b ——用RGB颜色值来表示,g和b两参数是可选的,如果只指定了r 的值,则g和b的值都等于r的值。三个参数一般取值范围为0.0~1.0,在此范围外的值则相应的增加或减少反射率;

Ka spectral file.rfl factor ——用一个rfl文件来表示。factor是一个可选参数,表示.rfl文件中值的乘数,默认为1.0;

Ka xyz x y z ——用CIEXYZ值来表示,x,y,z是CIEXYZ颜色空间的各分量值。y和z两参数是可选的,如果只指定了x的值,则y和z的值都等于r的值。三个参数一般取值范围为0~1。

2。漫反射描述的三种格式:

Kd r g b

Kd spectral file.rfl factor

Kd xyz x y z

3。镜反射描述的三种格式:

Ks r g b

Ks spectral file.rfl factor

Ks xyz x y z

4。滤光透射率描述的三种格式:

Tf r g b

Tf spectral file.rfl factor

Tf xyz x y z

5。光照模型描述格式:

illum illum_#

指定材质的光照模型。illum后面可接0~10范围内的数字参数。各个参数代表的光照模型如下所示:

--------------------------------------------------------------

光照模型属性

0 Color on and Ambient off

1 Color on and Ambient on

2 Highlight on

3 Reflection on and Ray trace on

4 Transparency: Glass on

Reflection: Ray trace on

5 Reflection: Fresnel on and Ray trace on

6 Transparency: Refraction on

Reflection: Fresnel off and Ray trace on

7 Transparency: Refraction on

Reflection: Fresnel on and Ray trace on

8 Reflection on and Ray trace off

9 Transparency: Glass on

Reflection: Ray trace off

10 Casts shadows onto invisible surfaces

--------------------------------------------------------------

6。渐隐指数描述

d factor

参数factor表示物体融入背景的数量,取值范围为0.0~1.0,取值为1.0表示

完全不透明,取值为0.0时表示完全透明。当新创建一个物体时,该值默认为1.0,即无渐隐效果。

与真正的透明物体材质不一样,这个渐隐效果是不依赖于物体的厚度或是否具有光谱特性。该渐隐效果对所有光照模型都有效。

d -halo factor

指定一种受观察者影响的渐隐效果。例如,对于一个定义为 d -halo 0.0的球体,在它的中心是完全消隐的,而在表面边界处将逐渐变得不透明。

其中factor表示应用在材质上的渐隐率的最小值。而材质上具体的渐隐率将在这个最小值到1.0之间取值。其计算公式为:

dissolve = 1.0 - (N*v)(1.0-factor)

7。反射指数描述

Ns exponent

指定材质的反射指数,定义了反射高光度。

exponent是反射指数值,该值越高则高光越密集,一般取值范围在0~1000。

8。清晰度描述

Sharpness value

指定本地反射贴图的清晰度。如果材质中没有本地反射贴图定义,则将此值应用到预览中的全局反射贴图上。

value可在0~1000中取值,默认60。值越高则越清晰。

9。折射值描述

Ni ptical density

指定材质表面的光密度,即折射值。

ptical density是光密度值,可在0.001到10之间进行取值。若取值为1.0,光在通过物体的时候不发生弯曲。玻璃的折射率为1.5。取值小于1.0的时候可能会产生奇怪的结果,不推荐。

////////////////////////////////////////////////

纹理映射

纹理映射可以对映射的相应材质参数进行修改,这个修改只是对原有存在的参数进行叠加修改,而不是替换原有参数,从而纹理映射在物体表面的表现上有很好的灵活性。

纹理映射只可以改变以下材质参数:

- Ka (color)

- Kd (color)

- Ks (color)

- Ns (scalar)

- d (scalar)

除了以上参数,表面法线也可以更改。

纹理文件类型可以是以下几种:

1.纹理映射文件

.mpc:颜色纹理文件color texture files ——可改变Ka,Kd,Ks的值

.mps:标量纹理文件scalar texture files——可改变Ns,d,decal的值

.mpb:凹凸纹理文件bump texture files——可改变面法线

2.程序纹理文件:

程序纹理文件是用数学公式来计算纹理的样本值。有以下几种格式:

.cxc

.cxs

.cxb

以下是mtl文件中对于纹理映射的描述格式:

1.map_Ka -options args filename

为环境反射指定颜色纹理文件(.mpc)或程序纹理文件(.cxc),或是一个位图文件。在渲染的时候,Ka的值将再乘上map_Ka的值。

而map_Ka的可选项参数有以下几个:

-blendu on | off

-blendv on | off

-cc on | off

-clamp on | off

-mm base gain

-o u v w

-s u v w

-t u v w

-texres value

2.map_Kd -options args filename

为漫反射指定颜色纹理文件(.mpc)或程序纹理文件(.cxc),或是一个位图文件。作用原理与可选参数与map_Ka同。

3.map_Ks -options args filename

为镜反射指定颜色纹理文件(.mpc)或程序纹理文件(.cxc),或是一个位图文件。作用原理与可选参数与map_Ka同。

4.map_Ns -options args filename

为镜面反射指定标量纹理文件(.mps或.cxs)。可选参数如下所示:

-blendu on | off

-blendv on | off

-clamp on | off

-imfchan r | g | b | m | l | z

-mm base gain

-o u v w

-s u v w

-t u v w

-texres value

5.map_d -options args filename

为消隐指数指定标量纹理文件(.mps或.cxs)。作用原理和可选参数与map_Ns 同。

6.map_aat on

打开纹理反走样功能。

7.decal -options args filename

指定一个标量纹理文件或程序纹理文件用于选择性地将材质的颜色替换为纹理的颜色。可选参数同map_Ns。

在渲染期间, Ka, Kd, and Ks和map_Ka, map_Kd, map_Ks的值通过下面这个公式来进行使用:

result_color=tex_color(tv)*decal(tv)+mtl_color*(1.0-decal(tv))

其中tv表示纹理顶点,result_color是Ka,Kd和Ks的综合作用值。

8.disp -options args filename

指定一个标量纹理文件或程序纹理文件实现物体变形或产生表面粗糙。可选参数同map_Ns。

9.bump -options args filename

为材质指定凹凸纹理文件(.mpb或.cxb),或是一个位图文件。

可选参数可为:

-bm mult

-clamp on | off

-blendu on | off

-blendv on | off

-imfchan r | g | b | m | l | z

-mm base gain

-o u v w

-s u v w

-t u v w

-texres value

以上各参数含义可见原文。

////////////////////////////////////////////////////////

反射贴图

在.mtl文件中的定义格式为:

1.refl -type sphere -options -args filename

指定一个球体区域将指定的纹理反射映射至物体。filename为一个颜色纹理文件,或可以映射的位图。

2.refl -type cube_side -options -args filenames

指定一个立方体区域将指定的纹理反射映射至物体。可以通过以下方式来指定纹理位置:

refl -type cube_top

refl -type cube_bottom

refl -type cube_front

refl -type cube_back

refl -type cube_left

refl -type cube_right

“refl”可以单独使用,或配合以下参数使用。使用时将参数置于“refl”和“filename”之间。

-blendu on | off

-blendv on | off

-cc on | off

-clamp on | off

-mm base gain

-o u v w

-s u v w

-t u v w

-texres value

////////////////////////////////////////////////////////

实例:

newmtl my_mtl

Ka 0.0435 0.0435 0.0435

Kd 0.1086 0.1086 0.1086

Ks 0.0000 0.0000 0.0000

Tf 0.9885 0.9885 0.9885

illum 6

d -halo 0.6600

Ns 10.0000

sharpness 60

Ni 19713

map_Ka -s 1 1 1 -o 0 0 0 -mm 0 1 chrome.mpc

map_Kd -s 1 1 1 -o 0 0 0 -mm 0 1 chrome.mpc

map_Ks -s 1 1 1 -o 0 0 0 -mm 0 1 chrome.mpc

map_Ns -s 1 1 1 -o 0 0 0 -mm 0 1 wisp.mps

map_d -s 1 1 1 -o 0 0 0 -mm 0 1 wisp.mps

disp -s 1 1 .5 wisp.mps

decal -s 1 1 1 -o 0 0 0 -mm 0 1 sand.mps

bump -s 1 1 1 -o 0 0 0 -bm 1 sand.mpb

refl -type sphere -mm 0 1 clouds.mpc

////////////////////////////////////////////////////////

pe文件格式

PE文件格式详解(一)――基础知识 什么是PE文件格式: 我们知道所有文件都是一些连续(当然实际存储在磁盘上的时候不一定是连续的)的数据组织起来的,不同类型的文件肯定组织形式也各不相同;PE文件格式便是一种文件组织形式,它是32位Wind ow系统中的可执行文件EXE以及动态连接库文件DLL的组织形式。为什么我们双击一个EXE文件之后它就会被Window运行,而我们双击一个DOC文件就会被Word打开并显示其中的内容;这说明文件中肯定除了存在那些文件的主体内容(比如EXE文件中的代码,数据等,DOC文件中的文件内容等)之外还存在其他一些重要的信息。这些信息是给文件的使用者看的,比如说EXE文件的使用者就是Window,而DOC文件的使用者就是Word。Window可以根据这些信息知道把文件加载到地址空间的那个位置,知道从哪个地址开始执行;加载到内存后如何修正一些指令中的地址等等。那么PE文件中的这些重要信息都是由谁加入的呢?是由编译器和连接器完成的,针对不同的编译器和连接器通常会提供不同的选项让我们在编译和 联结生成PE文件的时候对其中的那些Window需要的信息进行设定;当然也可以按照默认的方式编译连接生成Window中默认的信息。例如:WindowNT默认的程序加载基址是0x40000;你可以在用VC连接生成EXE文件的时候使用选项更改这个地址值。在不同的操作系统中可执行文件的格式是不同的,比如在Linux上就有一种流行的ELF格式;当然它是由在Linux上的编译器和连接器生成的,

所以编译器、连接器是针对不同的CPU架构和不同的操作系统而涉及出来的。在嵌入式领域中我们经常提到交叉编译器一词,它的作用就是在一种平台下编译出能在另一个平台下运行的程序;例如,我们可以使用交叉编译器在跑Linux的X86机器上编译出能在Arm上运行的程序。 程序是如何运行起来的: 一个程序从编写出来到运行一共需要那些工具,他们都对程序作了些什么呢?里面都涉及哪些知识需要学习呢?先说工具:编辑器-》编译器-》连接器-》加载器;首先我们使用编辑器编辑源文件;然后使用编译器编译程目标文件OBJ,这里面涉及到编译原理的知识;连接器把OBJ文件和其他一些库文件和资源文件连接起来生成EXE文件,这里面涉及到不同的连接器的知识,连接器根据OS的需要生成EXE文件保存着磁盘上;当我们运行EXE文件的时候有W indow的加载器负责把EXE文件加载到线性地址空间,加载的时候便是根据上一节中说到的PE文件格式中的哪些重要信息。然后生成一个进程,如果进程中涉及到多个线程还要生成一个主线程;此后进程便开始运行;这里面涉及的东西很多,包括:PE文件格式的内容;内存管理(CPU内存管理的硬件环境以及在此基础上的OS内存管理方式);模块,进程,线程的知识;只有把这些都弄清楚之后才能比较清楚的了解这整个过程。下面就让我们先来学习PE文件格式吧。

sketchup入门教程

我想大家能静下心来把这篇文章看完对下面的操作就会轻松很多了SKETCHUP初学者圣经 这是老外写的一篇初学者的指南,主要阐述了SKETCHUP的基本建模思路和原则及技巧,觉得很好,堪称圣经,我将它翻译过来,篇幅比较长,希望大家能够认真研读一下,虽说是初学者圣经,但里面的内容对于老手来说也堪称经典,同样可以读一读,里面有些内容需要读者由SketchUp的基本知识,大家可以再看本站FLASH教程的同时读一下这篇文章,我想收获会更大。 这是我自己的一些经验。如果你对SketchUp还没有很多的了解和经验,那么试试按照下面说得去做,直到你得出了自己的经验和见解。我采用下面这些方法,是因为它们适合我工作的习惯,其他人可能会有不同的适合自己的方法,如果你有更好的招数,拿出来和大家共享一下子吧! 建模--步骤 首先,一条原则是我们应该尽量将模型量控制在最简单,最小。当然,如果你以建立细致入微的模型为乐趣的话,那么可以不必遵循这个原则。但是,如果你是用SketchUp来养家活口,维持生计,那么过分细致的模型是没有必要的。你应该努力在完成工作的前提下,将模型建的尽量简单。一旦你不得不更改模型的时候,尤其是本来即将完成时,需要更改的话,越简单的模型越容易修改。 如果你的模型按照一定的原则清晰的分成了组或组件,那么其实你就

可以将任意组件保存成一个单独的文件,在需要改变组件的时候,只需要打开保存的那个文件,进行编辑并保存,然后在含有这个组件的模型中,重新调用就可以了,这样做不必受场景中其他东西的干扰,编辑速度也快。如果你边建模边推敲方案,那么就先建立一个大的体块,随着你设计的深入,逐渐将模型加入细节。你可以轻松的将一些粗糙的大体块替换为精致的模型,当然前提是你要有足够深入的设计。 导入CAD文件 将CAD文件导入SketchUp,然后通过简单地描一描线段,使它生成面,然后推推拉拉地建立起一个3D模型,这听起来确实令人兴奋。但是这样工作的效果实际上取决于你的CAD图的质量。 导入CAD的2D文件,实际上能产生许多令人头疼的麻烦。熟手画得简单的轮廓线的CAD图不会产生什么大的麻烦,生手画的细节繁多,杂乱无章的CAD图就不那么容易利用了。“带有小小的线段、转角处两条线没有相交、一条线和另外一条看上去平行实际上只差一点点”,有这些问题的CAD图,都会在你建立模型的时候成为你的绊脚石,似乎应该说是钢针,因为它们小的让你很难察觉和纠正。用这样的CAD图导入SketchUp作为底图,你花费在纠正错误上的时间反倒会比你节省的时间多。 接近完成的CAD图纸,实际上包含了大量你建模时用不着的信息。你在CAD制图中过分详细的分层方法或者是重叠的线等等,都是在

elf文件格式

第1章文件格式 1.1 Executable and Linking Format (ELF) 1.1.1整体结构 ELF对象格式用于目标文件(.o扩展名)和执行文件. 有些信息只出现在目标文件或执行文件中. ELF文件由下列部件构成. ELF header必须放在文件的开始;其他部件可以随便排放(ELF header给出了其他部件的偏移量). 1.1.2ELF头[ELF Header] ELF头包含目标文件的一般信息;具有如下结构(from elf.h): #define EI_NIDENT 16 typedef struct { unsigned char e_ident[EI_NIDENT]; Elf32_Half e_e_type; Elf32_Half e_machine; Elf32_Word e_version; Elf32_Addr e_entry; Elf32_Off e_phoff; Elf32_Off e_shoff; Elf32_Word e_flags; Elf32_Half e_ehsize; Elf32_Half e_phentsize; Elf32_Half e_phnum; Elf32_Half e_shentsize; Elf32_Half e_shnum; Elf32_Half e_shstrndx; }; ELF头域描述:

1.1.3程序头[Program Header] 程序头为一结构数组,每个元素描述执行文件的一个可载入段. 元素结构如下(from elf.h): typedef struct { Elf32_Word p_type; Elf32_Off p_offset; Elf32_Addr p_vaddr; Elf32_Addr p_paddr; Elf32_Word p_filesz; Elf32_Word p_memsz; Elf32_Word p_flags; Elf32_Word p_align; } Elf32_Phdr;

草图大师基础教程

1、选择的时候,双击一个单独的面可以同时选中这个面和组成这个面的线。 2、双击物体上的一个面,可以选择该面的面和线三击物体上的一个面,可以选择该物体的所有面和线。 3、使用漫游命令和相机命令的时候,可以在右下角的输入框里面输入视线的高度。 4、使用动态缩放命令的时候,可以输入数字+deg(例:60deg)来调整相机视角。 5、使用动态缩放命令的时候,可以输入数字+mm(例:35mm)来调整相机焦距。 6、把物体做成组群或者组件,可以在右键菜单里面的沿轴镜相里面选择镜相方式。 7、选择物体,用比例缩放命令,选择缩放方向以后输入-1,可以镜相物体。 8、利用推拉命令一次,下次运用推拉命令时双击可重复上次的尺寸。 9、选择物体时按住ctrl可以增加选择,按住shift可以加减选择,同时按住ctrl和shift为减选择。 10、shift+鼠标中键为pan功能。 11、当锁定一个方向时(如平行,极轴等)按住shift可保持这个锁定。 12、选择状态下单击物体是选线或面双击是线和面而三击可以选体选择物体后按住CT RL 用移动复制命令可以直接复制物体而如果该物体已经做成组的话复制出来的物体依然在同一组里使用橡皮檫只能删除线而不能删除面所以如果要删除一个面上杂乱的线用橡皮檫要比框选物体后用DEL命令方便。 13、滚轮+左键全按是pan哦,注意先按滚轮,在按左键。 14、在复制移动(按CTRL复制)后输入x/ 的数值时,如输入5/则两物体之间出现4个物体,如输入4/则两物体之间出现3个物体,阵列也一样! 15、在导出cad时有一个选项(options,在save/cancel键下方),进入其中并选择边线(edges)和面(faces),导出后就线和面都有了。 16、查看--显示隐藏组件,快捷键是shift+a。crtl+A全选,同时按住Shift和ctrl点击不想隐藏的物体,再按隐藏的快捷键就可以了。 17、SU-技巧-空间分割, 用画直线的工具在一表面停留(不要点击鼠标),按住SHIF T键,移动鼠标,会有一条平行于此表面的辅助线(虚线)出现,用来画空间分割是一个很好的方法。 18、su的捕捉就好象cad里面的极轴,就是比如当你移动一个物体的时候,大致的移动方向接近某个轴方向的时候,会自动捕捉,分别显示红绿蓝三色辅助线,当然画线等等操作的时候也是同样的。 19、快捷键在窗口-系统属性-快捷键里面可以设置 20、在确定方向以后,可以点住SHIFT键来锁定方向 21、缩放视图的时候按住shift可变为广角镜头。 22、在一个新的面上双击可以重复上次拉伸的尺寸。 23、用右键点取面可以让视图或者坐标轴对齐到这个面。

草图大师入门操作

SketchUp是一套直接面向设计方案创作过程而不只是面向渲染成品或施工图纸的设计工具,其创作过程不仅能够充分表达设计师的思想而且完全满足与客户即时交流的需要,与设计师用手工绘制构思草图的过程很相似,同时其成品导入其它着色、后期、渲染软件可以继续形成照片级的商业效果图。是目前市面上为数不多的直接面向设计过程的设计工具,它使得设计师可以直接在电脑上进行十分直观的构思,随着构思的不断清晰,细节不断增加,最终形成的模型可以直接交给其它具备高级渲染能力的软件进行最终渲染。这样,设计师可以最大限度地减少机械重复劳动和控制设计成果的准确性。 Sketchup快捷键: 编辑/撤销Ctrl+z 编辑/放弃选择Ctrl+t 编辑/辅助线/删除Alt+E 编辑/辅助线/显示Shift+Q 编辑/辅助线/隐藏Q 编辑/复制Ctrl+C 编辑/剪切Ctrl+X 编辑/全选Ctrl+A 编辑/群组G 编辑/删除Delete 编辑/显示/全部Shift+A 编辑/显示/上一次Shift+L 编辑/显示/选择物体Shift+H 编辑/隐藏H 编辑/粘贴Ctrl+V 编辑/制作组建Alt+G 编辑/重复Ctrl+Y 编辑/将面翻转Alt+V 编辑/炸开/解除群组Shift+G 查看/工具栏/标准Ctrl+1 查看/工具栏/绘图Ctrl+2 查看/工具栏/视图Ctrl+3 查看/工具栏/图层Shift+W 查看/工具栏/相机Ctrl+4 查看/显示剖面Alt+,查看/显示剖切Alt+.

查看/虚显隐藏物体Alt+H 查看/页面/创建Alt+A 查看/页面/更新Alt+U 查看/页面/幻灯演示Alt+Space 查看/页面/删除Alt+D 查看/页面/上一页pageup 查看/页面/下一页pagedown 查看/页面/演示设置Alt+:查看/坐标轴Alt+Q 查看/X光模式T 查看/阴影Alt+S 窗口/材质浏览器Shift+X 窗口/场景信息Shift+F1 窗口/图层Shift+E 窗口/系统属性Shift+P 窗口/页面设置Alt+L 窗口/阴影设置Shift+S 窗口/组建Shift+C 工具/材质X 工具/测量/辅助线Alt+M 工具/尺寸标注D 工具/量角器/辅助线Alt+P 工具/路径跟随Alt+F 工具/偏移O 工具/剖面Alt+/ 工具/删除E 工具/设置坐标轴Y 工具/缩放S 工具/推拉U 工具/文字标注Alt+T 工具/旋转Alt+R 工具/选择Space 工具/移动M 绘制/多边形P 绘制/矩形R 绘制/徒手画F 绘制/圆弧A 绘制/圆形C

elf详解

ARM-ELF文件格式与GNU ARM Linker机制 作者:admin 日期:2008-10-13 字体大小: 小中大

里面除了二进制的机器代码,还有一些可用于进行重定位的信息。它主要是作为LINKER(ld)的输入,LINKER将跟据这些信息,将需要重定位的符号重定位,进而产生可执行的OBJECT 文件。ELF格式的可重定位OBJECT文件由header与section 组成。 Header 包括ELF header 与 section header. ELF header 位于文件的头部,用于存储目标机器的架构,大小端配置,ELF header 大小,object文件类型,section header 在文件中的偏移,section header 的大小,section header 中的项目数等信息。Section header 则定义了文件中每个section 的类型,位置,大小等信息。Linker就是通过查找ELF header,找到 section header 的入口,再在section header 中找到相应的section 入口,进而定位到目标section 的。 Section 包括 .text :经过编译的机器代码。 .rodata :只读的数据,例如printf(“hello!”)中的字符串hello。.data :已初始化的全局变量,局部变量将在运行时被存放在堆栈中,不会在.data或 .bss段中出现。 .bss :未初始化的全局变量,在这里只是一个占位符,在object 文件中并没有实际的存储空间。 .symtab :符号表,用于存放程序中被定义的或被引用到的全局变量和函数的信息。

Sketchup快速完全入门手册

Sketchup 快速完全入门手册焦志鹏1024 https://www.wendangku.net/doc/aa7633074.html,

写在前面: 子曾经曰过:“工欲善其事,必先利其器”,两年前,我第一次接触su,中午收到别人从qq 上传来的su5.0,当时的感觉就是“这么小的软件”,当天下午了解了su 的大部分功能和基本用法,这时的想法是“果然是个小软件”…… 当时认为已经完全了解了su 的我在两年后的今天,却仍然不敢对任何人说:“学su?不会你找我!” 这就是su……

目录 第一篇初识su 第二篇su 全局概述 第三篇su 功能详解 第四篇su 的材质和组件第五篇su 使用技巧

第一篇初识su 这一篇可以算作一个前言,讨论一些似乎看起来和su 没有关系,但实际上密不可分的问题。 一、关于su 的适用范围 以我所接触的人们来说,使用su 的人大概可以分为四类“建筑设计”“室内设计”“景观设计”“工业设计”,总的来说,每一类人里都有高手,也许每个人都在使用中有所感受,这里我只说说我的一家之言。 建筑设计 据我所知,su 被引入cad 行业,最早就是在“建筑设计”中被使用的,以我的观点看,su 作为建筑设计的模型制作工具,可以说是比较合适的。 首先说说它的优点:第一,它的操作界面非常友好,相对于“三视图+相机视图”的模式,su 在人机交互界面上有着让人难以抗拒的友善感,在三维操作方面,也显得很灵活;第二,它的工具功能简单,操作方便,我一直认为,软件工具不怕多,就怕复杂,一个工具解决一个基本问题,多个工具组合解决复杂问题,这一点su 还是很不错的,在su 的工具栏里,只要单击就可以使用这个工具,单击不区分左右键,没有二级工具集,不弹出预设值对话框,一切都是顺序发生的,这一点对新手非常重要;第三,它的模型对简单体块的修改、查看非常方便,对建筑方案的前期推敲非常有利;第四,它的模型是单一文件,包含所有的贴图、块等元素,交换方便。 其次我们也要面对它的缺点:su 最大的问题可以归结为两大类:程序内核本身先天的孱弱和与生俱来的功能的缺失,有这些问题本身并不可怕,真正让你感到不幸的是我要告诉你在可以预见的将来,我们对这两点无计可施,具体的问题会在后面陆续提及。说到具体的问题,有如下几点:第一,su 的性能和执行效率非常低下,我可以毫不客气的说它可以荣登我所用过的所有软件中“性能最差”的宝座;这是由它的内核决定的,这里我们不谈这个,第二,su 在设计上也存在很严重的问题,首先,su 的精度不够,su 的精度在长度上只能精确到小数点后1 位,既0.1,当你绘制一条0.11 单位长度的线时,你会发现在模型信息中这条直线的长度前添加了约等于符号“~”,也许你会说没有人会画这样的线,但是在有曲线相交的情况下,这种线是有可能存在的,su 在面积上只能精确到0.01,也就是说面积小于0.01 单位的面永远无法封面;第三su 设计上另一个缺失就是在su 中没有贝斯曲线,su 处理曲线只能将曲线转变为多段直线处理,换句话说su 不能处理曲线方程,比如在cad 里用spl 命令绘制的曲线,就是贝斯曲线,这种曲线导入su 后,将被转化为多段线,这样一些原本在cad 中交叉的线在su 导入的过程中就会断开,导致不能封面(其实cad 在处理spl 时也比较头疼,比如你可以试试,cad 里spl 无法延伸),而事实是更残酷的,实际上su 在处理任何曲线都是以多段线的形式处理的,因此cad 中的任何曲线,包括圆、圆弧、多段线中的弧都将无一幸免;第四,当你知道了su 连曲线都处理的如此狼狈,那么su 弱的可怜的曲面建模能力也就不足为奇了,很多人都在埋怨su 的曲面能力,但很少有人知道su 曲面能力弱是因为su 无法处理贝斯曲线,更没有人知道不能处理贝斯曲线实际上也是其精度不够的必然结果。 说了这么多,总的看起来好像su 的缺点比优点要多,但是在实际应用中,我们只有在真正关注绝对精准的尺寸的施工图中才会遇到我上述各种缺点,因此,虽然它有很多不足,但仍然是当今非常热门的建模软件。 室内设计 用su 做室内设计的朋友们,可能会比用su 做建筑设计的朋友们更能感受我刚才说过的那些缺点,这是因为室内设计比建筑设计更关注细节,更容易遇到上述的那些不足,由于su 的性能不高,在场景复杂的情况下难以操作,由于su 的精度不够,一些细节的部分无法表达,由于曲线是多段线的形式,一些平滑曲面的效果必然会消耗大量的系统资源,曲面建模能力不足,也使很多设计中个性的亮点难以表现。总的来说,su 做室内设计,除了上手方

elf文件资料格式(中文版)

3. 页标题的容和文章的页脚已经在开始的时候被换掉了。 4. 文章的排版也已经修正过了。 5. 如果必要,不同的字体已经被忽略了。大部分地方,这片文档能让你 充分的理解。然而,很小的地方,原始的文档使用了斜体字来指出文 章中的字符变量。在那种情况下,本文使用<尖括号>。在原始的文档 中没有出现尖括号。 6. 原始的文档有三个错误,如果你是不经意读它的话,是不会明显 就能找出的。但是在这里,明确的被鉴别出来了。 我很冒昧的纠正了那些错误。在他们的位置用一个{*}做上了标记。 可能还有其他我没有看出来的的错误。 如果有如何其他的区别都是我的责任。这样的错误请 mailto:breadboxmuppetlabs.. Brian Raiter [Last edited Fri Jul 23 1999] ________________________________________________________________ EXECUTABLE AND LINKABLE FORMAT (ELF) Portable Formats Specification, Version 1.1 Tool Interface Standards (TIS) ________________________________________________________________ =========================== Contents 容=========================== 序言 1. OBJECT文件 导言 ELF头(ELF Header) Sections String表(String Table) Symbol表(Symbol Table) 重定位(Relocation) 2. 程序装载与动态连接 导言 Program头(Program Header)

关于ELF文件格式

现代Linux采用ELF(Executable and Linking Format)做为其可连接和可执行文件的格式,因此ELF格式也向我们透出了一点Linux核内的情景,就像戏台维幕留下的一条未拉严的缝。 PC世界32仍是主流,但64位的脚步却已如此的逼近。如果你对Windows比较熟悉,本文还将时时把你带回到PE中,在它们的相似之处稍做比较。ELF文件以“ELF 头”开始,后面可选择的跟随着程序头和节头。地理学用等高线与等温线分别展示同一地区的地势和气候,程序头和节头则分别从加载与连接角度来描述EFL文件的组织方式。 ELF头 ------------------------------------------------ ELF头也叫ELF文件头,它位于文件中最开始的地方。 /usr/src/linux/include/linux/elf.h typedef struct elf32_hdr{ unsigned char e_ident[EI_NIDENT]; Elf32_Half e_type; Elf32_Half e_machine; Elf32_Word e_version; Elf32_Addr e_entry; /* Entry point */ Elf32_Off e_phoff;

Elf32_Off e_shoff; Elf32_Word e_flags; Elf32_Half e_ehsize; Elf32_Half e_phentsize; Elf32_Half e_phnum; Elf32_Half e_shentsize; Elf32_Half e_shnum; Elf32_Half e_shstrndx; } Elf32_Ehdr; #define EI_NIDENT 16 ELF头中每个字段的含意如下: Elf32_Ehdr->e_ident[] (Magic) 这个字段是ELF头结构中的第一个字段,在elf.h中EI_NIDENT被定义为16,因此它占用16个字节。e_ident的前四个字节顺次应该是0x7f、 0x45、 0x4c、 0x46,也就是"\177ELF"。这是ELF文件的标志,任何一个ELF文件这四个字节都完全相同。 16进制 8进制字母 0x7f 0177 0x45 E 0x4c L

草图大师初学者必看

草图大师(SU)初学者圣经-初学者必看 这是我自己的一些经验。如果你对su还没有很多的了解和经验,那么试试按照下面说得去做,直到你得出了自己的经验和见解。我采用下面这些方法,是因为它们适合我工作的习惯,其他人可能会有不同的适合自己的方法,如果你有更好的招数,拿出来和大家共享一下子吧! 建模--步骤 首先,一条原则是我们应该尽量将模型量控制在最简单,最小。当然,如果你以建立细致入微的模型为乐趣的话,那么可以不必遵循这个原则。但是,如果你是用su来养家活口,维持生计,那么过分细致的模型是没有必要的。你应该努力在完成工作的前提下,将模型建的尽量简单。一旦你不得不更改模型的时候,尤其是本来即将完成时,需要更改的话,越简单的模型越容易修改。 如果你的模型按照一定的原则清晰的分成了组或组件,那么其实你就可以将任意组件保存成一个单独的文件,在需要改变组件的时候,只需要打开保存的那个文件,进行编辑并保存,然后在含有这个组件的模型中,重新调用就可以了,这样做不必受场景中其他东西的干扰,编辑速度也快。如果你边建模边推敲方案,那么就先建立一个大的体块,随着你设计的深入,逐渐将模型加入细节。你可以轻松的将一些粗糙的大体块替换为精致的模型,当然前提是你要有足够深入的设计。 导入CAD文件 将CAD文件导入su,然后通过简单地描一描线段,使它生成面,然后推推拉拉地建立起一个3D模型,这听起来确实令人兴奋。但是这样工作的效果实际上取决于你的CAD图的质量。 导入CAD的2D文件,实际上能产生许多令人头疼的麻烦。熟手画得简单的轮廓线的CAD 图不会产生什么大的 麻烦,生手画的细节繁多,杂乱无章的CAD图就不那么容易利用了。“带有小小的线段、转角处两条线没有相交、一条线和另外一条看上去平行实际上只差一点点”,由这些问题的CAD图,都会在你建立模型的时候成为你的绊脚石,似乎应该说是钢针,因为它们小的让你很难察觉和纠正。用这样的CAD图导入su作为底图,你花费在纠正错误上的时间反倒会比你节省的时间多。 接近完成的CAD图纸,实际上包含了大量你建模时用不着的信息。你在CAD制图中过分详细的分层方法或者是重叠的线等等,都是在su中建立模型所不需要的。如果你要用这样一张漏洞百出,复杂无比的CAD图纸导入su来建模,而你在之前要做的清理工作会浪费很多时间。(译者:所以不如在导入su后,马上炸开所有CAD中形成的块,将所有线归到一层,然后将这些变为一个组,作为底图,在它上面重新描一遍会更节省时间)。 即使是进行了良好分层的2D CAD图纸也不是没有问题的。记住:su的层不会为你隔离在不同层的线(也就是说,比如有三条线分属三个层,他们围合成一个面,这个面仍然会产生,而不会因为这三条线不在一个层上而不产生这个面。),su中的层仅仅是在视觉上区分线面的分类方法。这个特性同样适用于导入的CAD图。任何在一个层上的线如果与其他层上的线重合,那么在导入过程中都将被无情地清理掉。所以,在某些时候,一层一层地导入将会非常有用,每导入一个层的东西,su都会将其自动成组,也不会误杀重叠的线(译者:注意这里是说要将CAD中的不同层分别保存到不同的CAD文件,这样做是因为在CAD中关闭不可见的层也会被导入到su中)。 CAD中带有门窗的墙已经被门窗打断,如果你导入这样的CAD图就需要花费时间来补上门窗上下部分的墙面。

目标文件格式分析工具-ar-nm等等

目标文件格式分析工具: ar,nm,objdump,objcopy,readelf 如果普通编程不需要了解这些东西,如果想精确控制你的目标文件的格式或者你想查看一下文件里的内容以便作出某种判断,那么你可以看一下下面的工具:ar,nm,objdump,objcopy。具体用法请参考man在线手册。 ar基本用法 ar命令可以用来创建、修改库,也可以从库中提出单个模块。库是一单独的文件,里面包含了按照特定的结构组织起来的其它的一些文件(称做此库文件的member)。原始文件的内容、模式、时间戳、属主、组等属性都保留在库文件中。 下面是ar命令的格式: ar [-]{dmpqrtx}[abcfilNoPsSuvV] [membername] [count] archive files... 例如我们可以用ar rv libtest.a hello.o hello1.o来生成一个库,库名字是test,链接时可以用-ltest链接。该库中存放了两个模块hello.o和hello1.o。选项前可以有‘-'字符,也可以没有。下面我们来看看命令的操作选项和任选项。现在我们把{dmpqrtx}部分称为操作选项,而[abcfilNoPsSuvV]部分称为任选项。 {dmpqrtx}中的操作选项在命令中只能并且必须使用其中一个,它们的含义如下: ?d:从库中删除模块。按模块原来的文件名指定要删除的模块。如果使用了任选项v 则列出被删除的每个模块。 ?m:该操作是在一个库中移动成员。当库中如果有若干模块有相同的符号定义(如函数定义),则成员的位置顺序很重要。如果没有指定任选项,任何指定的成员将移到库的最后。也可以使用'a','b',或'I'任选项移动到指定的位置。 ?p:显示库中指定的成员到标准输出。如果指定任选项v,则在输出成员的内容前,将显示成员的名字。如果没有指定成员的名字,所有库中的文件将显示出来。 ?q:快速追加。增加新模块到库的结尾处。并不检查是否需要替换。'a','b',或'I'任选项对此操作没有影响,模块总是追加的库的结尾处。如果使用了任选项v则列出每个模块。 这时,库的符号表没有更新,可以用'ar s'或ranlib来更新库的符号表索引。 ?r:在库中插入模块(替换)。当插入的模块名已经在库中存在,则替换同名的模块。 如果若干模块中有一个模块在库中不存在,ar显示一个错误消息,并不替换其他同名模块。默认的情况下,新的成员增加在库的结尾处,可以使用其他任选项来改变增加的位置。 ?t:显示库的模块表清单。一般只显示模块名。 ?x:从库中提取一个成员。如果不指定要提取的模块,则提取库中所有的模块。 下面在看看可与操作选项结合使用的任选项: ?a:在库的一个已经存在的成员后面增加一个新的文件。如果使用任选项a,则应该为命令行中membername参数指定一个已经存在的成员名。

计算机操作系统实验_解析ELF文件

西北工业大学操作系统实验实验报告 一、实验目的 熟悉可执行链接文件(ELF)的结构,了解GeekOS将ELF格式的可执行程序加载到内存,建立内核线程并运行的实现技术。 二、实验要求 1.修改Project1项目中的/GeekOS/elf.c文件:在函数Parse_ELF_Executable()中添加代码,分析ELF格式的可执行文件(包括分析得出ELF文件头、程序头),获取可执行文件长度、代码段、数据段等信息,并打印输出。并且,填充Exe_Format 数据结构中的值域。 2.掌握GeekOS在核心态运行可执行程序的原理,绘制出可执行程序在内核中加载、运行的流程图(需反映关键函数的调用关系)。 3.回答实验讲义P125页的思考题。 三、实验过程及结果 1、修改Project1项目中的/GeekOS/elf.c文件:在函数Parse_ELF_Executable()中添加代码,分析ELF格式的可执行文件(包括分析得出ELF文件头、程序头),获取可执行文件长度、代码段、数据段等信息,并打印输出。并且,填充Exe_Format 数据结构中的值域。 答:修改Project1项目中的/GeekOS/elf.c文件:在函数Parse_ELF_Executable()中添加代码,如下: ==============elf.c=================== int Parse_ELF_Executable(char *exeFileData, ulong_t exeFileLength, struct Exe_Format *exeFormat) { int i; elfHeader *head=(elfHeader*)exeFileData; programHeader *proHeader=(programHeader *)(exeFileData+head->phoff); KASSERT(exeFileData!=NULL); KASSERT(exeFileLength>head->ehsize+head->phentsize*head->phnum); KASSERT(head->entry%4==0); exeFormat->numSegments=head->phnum;

SU的个人使用总结和体会(适合初学者)

一、建模开始前一定要记得设置单位,最好是常用的毫米(mm)。 二、软件操作要快,鼠标和键盘的结合才能真正快。SU的自定义快捷键可以为单字母或CTRL、SHIFT、ALT加单字母。最好定义成跟常用的如CAD 一样的快捷键,最常用的是下面的命令,建议你将它定义为如下:画线L、画弧A、画圆C、平行拷贝O、移动M、删除E、旋转R、缩放S、放大Z、 填充材质H、画矩形和拉伸可依你认为易记的来定义。 三、在切换命令时初学者往往会不知如何结束正在执行的命令,所以特别建议你将选择定义为空格键。按ESC键可取消正在执行的操作或习惯按 一下空格键结束正在执行的命令,将会十分方便,又可避免误操作。 另外快捷键不要定义得太多,常用的即可,除非你的记性很好,呵呵。 四、在su中用画线、画矩形等几个简单的命令即可建模,期间不会有任何的面板切换,连数据输入面板也不用点击。相信用过MAX建模的人对面 板的频繁切换之麻烦有深切体会。另外,对面的任意切割、直观的任意拉伸也是SU的方便性重要的一面。加上放样命令的存在可以建出很多复 杂的模型。 五、SU的捕捉是自动的,有端点、中点、等分点、圆心、面等。对建模过程中的大部分命令都适用,加上可输入实际数据,所以不必担心精确 对齐和准确性等问题。 六、su建模大部分可通过面拉伸成物体来完成。而面是可很方便的通过画线等面命令来分割的。面也可通过拉伸来随时修改。SU的方便性的真 正体现。 七、关于视图缩放控制:在执行画线或移动拷贝等命令时,常常要缩放视图以便精确捕捉:可随时透明执行缩放命令,结束缩放命令后会自动 回到前面的命令执行状态而不会中断当前操作。(放大命令例外:可透明执行但要右键方可退出回到前面命令执行状态。)另外,按中键可随 时旋转视图;中键加按SHIFT键即为平移。 八、关于建筑建模:a、如果是CAD导入的平立面,在用画线工具将墙线封闭成面然后拉伸成墙体(物体)时往往会在平面窗等位置多一些线出 来,建议删除多余的线。b、在没有CAD图而又想开窗口定位准确的话,可利用线对线的分割来定位:在一条已有的线上再画一条比它短的线, 会自动在后者的结束点处将前面那条线分割开。利用这一特性可随时准确定位。另外画线也可当标尺来使用:执行画线命令可动态在右下角数

ELF格式-中文

________________________________________________________________ EXECUTABLE AND LINKABLE FORMAT (ELF) Portable Formats Specification, Version 1.1 Tool Interface Standards (TIS) ________________________________________________________________ =========================== Contents 内容=========================== 序言 1. OBJECT文件 导言 ELF头(ELF Header) Sections String表(String Table) Symbol表(Symbol Table) 重定位(Relocation) 2. 程序装载与动态连接 导言 Program头(Program Header) Program装载(Program Loading) Dynamic连接(Dynamic Linking) 3. C LIBRARY C Library ________________________________________________________________ 导言 ________________________________________________________________ ELF: 可执行连接格式 可执行连接格式是UNIX系统实验室(USL)作为应用程序二进制接口 (Application Binary Interface(ABI)而开发和发布的。工具接口标准委 员会(TIS)选择了正在发展中的ELF标准作为工作在32位INTEL体系上不同操 作系统之间可移植的二进制文件格式。

草图大师小技巧

sketchup中的小技巧 用了很长时间的sketchuo,总结了一些技巧,希望能和大家分享,共同进步,同时也希望高手们都来指导、补充一下。 1、选择的时候,双击一个单独的面可以同时选中这个面和组成这个面的线 2、双击物体上的一个面,可以选择整个物体的面和线 3、使用漫游命令和相机命令的时候,可以在右下角的输入框里面输入视线的高度 4、使用动态缩放命令的时候,可以输入数字+deg(例:60deg)来调整相机视角 5、使用动态缩放命令的时候,可以输入数字+mm(例:35mm)来调整相机焦距 6、把物体做成组群或者组件,可以在右键菜单里面的沿轴镜相里面选择镜相方式 7、选择物体,用比例缩放命令,选择缩放方向以后输入-1,可以镜相物体 1,利用推拉命令一次,下次运用推拉命令时双击可重复上次的尺寸 2,选择物体时按住ctrl可以增加选择,按住shift可以加减选择,同时按住ctrl和shift为减选择3,shift+鼠标中键为pan功能 4,当锁定一个方向时(如平行,极轴等)按住shift可保持这个锁定 在选择工具状态下按住ctrl、shift以及同时按住ctrl和shift可以改变选择集,请看下面的贴图,应该可以理解了吧。。。。。 不知道为什么不能抓图,每次抓的图上都没有鼠标,只能用数码相机拍了,晚上效果比较差,将就着看:) 选择状态下单击物体是选线或面双击是线和面而三击可以选体 选择物体后按住CTRL 用移动复制命令可以直接复制物体而如果该物体已经做成组的话 复制出来的物体依然在同一组里 使用橡皮檫只能删除线而不能删除面所以如果要删除一个面上杂乱的线要比框选物体后用DEL命令方便 初学者的一点小心得大虾们见笑了 滚轮+左键全按是pan哦. 注意先按滚轮,在按左键。 在移动后输入x/ 的数值时,如输入5/则两物体之间出现4个物体,如输入4/则两物体之间出现3个物体,阵列好象也一样啊!!!! 我们一个在做一个城市规划的项目,想建立一个体块模型,由于文件量很大,分成多个部分,大家同时建模完成。cad是由统一的原点导入的,但是,建好以后,用import命令将不同部分拼起来的时候,为何插入得有些体块只有?.. 在导出时有一个选项(options,在save/cancel键下方),进入其中并选择边线(edges)和面(faces),导出后就线和面都有了 我看教学上的是直接用拉伸工具就能直接连动牵引着图形出来,我觉得兰色图形中间的是用偏移工具做出来的,但是我只能拉出中间的图形,而没有牵引的感觉??!!

Linux ELF 运行时内存详解 - 黑客防线官方站

Linux ELF 运行时内存详解 4/22/2012 前一段时间做ROP (return-oriented programming )的东西,想要系统的了解Linux 中程序的内存格式(memory layout ),网上有很多文章,却没有一个深入完整的介绍。所以花了些时间做深入的了解,不放过一个细节。由于最初写的是英文文档,所以文中的图都是用英文标识的,不过应该不影响阅读。 本文详细解释了Linux ELF 文件的虚拟地址空间。另外本文也大概介绍了ASLR (Address Space Layout Randomization)技术对ELF 虚拟地址空间的影响。作者的测试系统是Linux Ubuntu 2.6.32-24和Vmware Workstation 7。另外所有的分析都基于Intel x86架构。 虚拟地址空间 当代的操作系统中每个进程都有自己的独立虚拟地址空间。在32位系统上,该虚拟地址空间有4G 大小。为了将虚拟地址转换为物理地址,Linux 内核使用了一个两级(事实上是三级,但是中间一级没有任何实质操作)分页机制,即页目录表和页表。分页机制与MMU (Memory Management Unit )合作将虚拟地址转换为物理地址。当操作系统引入虚拟地址后,所有的用户操作系统和内核线程(事实上Linux 只有进程概念而没有线程概念,Linux 通过页表机制来模拟实现内核线程)都将运行于虚拟地址模式。 另外Linux (以及Windows )使用了CPU 提供的权限机制。内核代码将运行于ring 0而用户程序运行于ring 3。 因此为了适应该分级机制以及适应多任务机制,Linux 的虚拟地址空间被分为两部分,如图1所示: 0xffff ffff 0x0Linux Virtual Address Split 0xffff ffff 0x0 Windows Virtual Address Split 图1. Linux/Windows 虚拟地址空间的内核部分和用户部分。 Linux 中,内核空间为0xc0000000到0xffffffff 的地址,因此内核代码将被映射到区域。而在Windows 中,默认的分割方式为内核与用户各占2GB 。本文仅详细分析Linux 的地址空间而不再涉及Windows 。下面分两部分介绍Linux 地址空间,首先是内核地址空间然后再介绍用户地址空间。 1. 内核地址空间 黑 客防线 a c k e r .c o m .c n 明出处

(完整版)SketchUp草图大师最全教程

SketchUp?草图大师 1、设计相关软件分类与分析 目前在设计行业普遍应用的CAD软件很多,主要有以下几种类型: 第一种是AUTOCAD,及以其为平台编写的众多的专业软件。这种类型的特点是依赖于AUTOCAD本身的能力,而AUTOCAD由于其历史很长,为了照顾大量老用户的工作习惯,很难对其内核进行彻底的改造,只能进行缝缝补补的改进。因此,AUTOCAD固有的建模能力弱的特点和坐标系统不灵活的问题,越来越成为设计师与计算机进行实时交流的瓶颈。即使是专门编写的专业软件也大都着重于平、立、剖面图纸的绘制,对设计师在构思阶段灵活建模的需要基本难以满足。 第二种是3DSMAX、MAYA、SOFTIMAGE等等具备多种建模能力及渲染能力的软件。这种类型软件的特点是虽然自身相对完善,但是其目标是“无所不能”和“尽量逼真”,因此其重点实际上并没有放到设计的过程上。即使是3DSVIZ 这种号称是为设计师服务的软件,其实也是3DSMAX的简化版本而已,本质上都没有对设计过程进行重视。 第三种是LIGHTSCAPE、MENTALRAY等等纯粹的渲染器,其重点是如何把其它软件建好的模型渲染得更加接近现实,当然就更不是关注设计过程的软件了。 第四种是RIHNO这类软件,不具备逼真级别的渲染能力或者渲染能力很弱,其主要重点就是建模,尤其是复杂的模型。但是由于其面向的目标是工业产品造型设计,所以很不适合建筑设计师、室内设计师使用。 目前在建筑设计、室内设计领域急需一种直接面向设计过程的专业软件。什么是设计过程呢?目前多数设计师无法直接在电脑里进行构思并及时与业主交流,只好以手绘草图为主,因为几乎所有软件的建模速度都跟不上设计师的思路。目前比较流行的工作模式是:设计师构思—勾画草图—向制作人员交待—建模人员建模—渲染人员渲染—设计师提出修改意见—修改—修改—最终出图,由于设计师能够直接控制的环节太少,必然会影响工作的准确性和效率。在这种情况下,我们欣喜地发现了直接面向设计过程的SKETCHUP。 2、软件公司简介 AtlastSoftware公司是美国著名的建筑设计软件开发商,公司最新推出的SketchUp建筑草图设计工具是一套令人耳目一新的设计工具,它给建筑师带来边构思边表现的体验,产品打破建筑师设计思想表现的束缚,快速形成建筑草图,创作建筑方案。SketchUp被建筑师称为最优秀的建筑草图工具,是建筑创作上的一大革命。 SketchUp是相当简便易学的强大工具,一些不熟悉电脑的建筑师可以很快的掌握它,它融合了铅笔画的优美与自然笔触,可以迅速地建构、显示、编辑三维建筑模型,同时可以导出透视图、DWG或DXF格式的2D向量文件等尺寸正确的平面图形。这是一套注重设计摸索过程的软件,世界上所有具规模的AEC(建筑工程)企业或大学几乎都已采用。建筑师在方案创作中使用CAD繁重的工作量可以被SketchUp的简洁、灵活与功能强大所代替,她带给建筑师的是一个专业的草图绘制工具,让建筑师更直接更方便的与业主和甲方交流,这些特性同样也适用于装潢设计师和户型设计师。 SketchUp是一套直接面向设计方案创作过程而不只是面向渲染成品或施工图纸的设计工具,其创作过程不仅能够充分表达设计师的思想而且完全满足与客户即时交流的需要,与设计师用手工绘制构思草图的过程很相似,同时其成品导入其它着色、后期、渲染软件可以继续形成照片级的商业效果图。是目前市面上为数不多的直接面向设计过程的设计工具,它使得设计师可以直接在电脑上进行十分直观的构思,随着构思的不断清晰,细节不断增加,最终形成的模型可以直接交给其它具备高级渲染能力的软件进行最终渲染。这样,设计师可以最大限度地减少机械重复劳动和控制设计成果的准确性。 3、软件特色 1、直接面向设计过程,使得设计师可以直接在电脑上进行十分直观的构思,随着构思的不断清晰,细节不断增加。这样,设计师可以最大限度地控制设计成果的准确性。 2、界面简洁,易学易用,命令极少,完全避免了像其它设计软件的复杂性。 3、直接针对建筑设计和室内设计,尤其是建筑设计,设计过程的任何阶段都可以作为直观的三维成品,甚至可以模拟手绘草图的效果,完全解决了及时与业主交流的问题。 4、在软件内可以为表面赋予材质、贴图,并且有2D、3D配景形成的图面效果类似于钢笔淡彩,使得设计过程的交流完全可行。 5、可以惊人方便地生成任何方向的剖面并可以形成可供演示的剖面动画。 6、准确定位的阴影。可以设定建筑所在的城市、时间,并可以实时分析阴影,形成阴影的演示动画。 4、受众分析 1、建筑和室内设计师。主要针对方案设计师,尤其对不熟悉电脑的设计师、不懂英文的设计师、对做照片级效果图制作师没有兴趣的设计师有更加重要的意义。

相关文档