Cutting on Triangle Mesh Local Model based haptic display for dental preparation surgery simulation

合集下载

计算机行业常见设备名称英语词汇汇总

计算机行业常见设备名称英语词汇汇总

计算机行业常见设备名称英语词汇汇总下面是计算机行业常见设备名称,大家可以参考下。

ATAPI(AT Attachment Packet Interface)BCF(Boot Catalog File,启动目录文件)BIF(Boot Image File,启动映像文件)CDR(CD Recordable,可记录光盘)CD-ROM/XA(CD-ROM eXtended Architecture,唯读光盘增强形架构)CDRW(CD-Rewritable,可重复刻录光盘)CLV(Constant Linear Velocity,恒定线速度)DAE(digital Audio Extraction,数据音频抓取)DDSS(Double Dynamic Suspension System,双悬浮动态减震系统)DDSS II(Double Dynamic Suspension System II,第二代双层动力悬吊系统)PCAV(Part Constant Angular Velocity,部分恒定角速度)VCD(Video CD,视频CD)AAS(Automatic Area Seagment?)dpi(dot per inch,每英寸的打印像素)ECP(Extended Capabilities Port,延长能力端口)EPP(Enhanced Parallel Port,增强形平行接口)IPP(Inter Printing Protocol,因特网打印协议)ppm(paper per minute,页/分)SPP(Standard Parallel Port,标准并行口)TET(Text Enhanced Technology,文本增强技术)USBDCDPD(Universal Serial Bus Device Class Definition for Printing Devices,打印设备的通用串行总线级标准) VD(Variable Dot,变点式列印)TWAIN(Toolkit Without An Interesting Name)协议AAT(Average aess time,平均存取时间)ABS(Auto Balance System,自动平衡系统)ASMO(Advanced Storage Mago-Optical,增强形光学存储器) AST(Average Seek time,平均寻道时间)ATA(AT Attachment,AT扩展型)ATOMM(Advanced super Thin-layer and high-Output Metal Media,增强形超薄高速金属媒体)bps(bit per second,位/秒)CAM(Common Aess Model,公共存取模型)CSS(Common Command Set,通用指令集)DMA(Direct Memory Aess,直接内存存取)DVD(Digital Video Disk,数字视频光盘)EIDE(enhanced Integrated Drive Electronics,增强形电子集成驱动器)FAT(File Allocation Tables,文件分配表)FDBM(Fluid dynamic bearing motors,液态轴承马达)FDC(Floppy Disk Controller,软盘驱动器控制装置)FDD(Floppy Disk Driver,软盘驱动器)GMR(giant magoresistive,巨型磁阻)HDA(head disk assembly,磁头集合)HiFD(high-capacity floppy disk,高容量软盘)IDE(Integrated Drive Electronics,电子集成驱动器)LBA(Logical Block Addressing,逻辑块寻址)MBR(Master Boot Record,主引导记录)MTBF(Mean Time Before Failure,平均故障时间)PIO(Programmed Input Output,可编程输入输出模式)PRML(Partial Response Maximum Likelihood,最大可能部分反响,用于提高磁盘读写传输率)RPM(Rotation Per Minute,转/分)RSD:(Removable Storage Device移动式存储设备)SCSI(Small Computer System Interface,小型计算机系统接口)SCMA:(SCSI Configured Auto Magically,SCSI自动配置)S.M.A.R.T.(Self-Monitoring, Analysis and Reporting Technology,自动监测、分析和报告技术)SPS(Shock Protection System,抗震保护系统)STA(SCSI Trade Association,SCSI同业公会)Ultra DMA(Ultra Direct Memory Aess,超高速直接内存存取) LVD(Low Voltage Differential)Seagate硬盘技术DiscWizard(磁盘控制软件)DST(Drive Self Test,磁盘自检程序)SeaShield(防静电防撞击外壳)3DPA(3D Positional Audio,3D定位音频)AC(Audio Codec,音频多媒体数字信号编解码器)Auxiliary Input(辅助输入接口)CS(Channel Separation,声道别离)DS3D(DirectSound 3D Streams)DSD(Direct Stream Digital,直接数字信号流)DSL(Down Loadable Sample,可下载的取样音色)DLS-2(Downloadable Sounds Level 2,第二代可下载音色)EAX(Environmental Audio Extensions,环境音效扩展技术) Extended Stereo(扩展式立体声)FM(Frequency Modulation,频率调制)FIR(finite impulse response,有限推进响应)FR(Frequence Response,频率响应)FSE(Frequency Shifter Effect,频率转换效果)HRTF(Head Related Transfer Function,头部关联传输功能) IID(Interaural Intensity Difference,两侧声音强度差异) IIR(infinite impulse response,无限推进响应)Interactive Around-Sound(交互式环绕声)Interactive 3D Audio(交互式3D音效)ITD(Interaural Time Difference,两侧声音时间延迟差异) MIDI:( Musical Instrument Digital Interface乐器数字接口)NDA:( non-DWORD-aligned ,非DWORD排列)Raw PCM:( Raw Pulse Code Modulated元脉码调制)RMA:( RealMedia Architecture实媒体架构)RTSP: (Real Time Streaming Protocol实时流协议)SACD(Super Audio CD,超级音乐CD)SNR(Signal to Noise Ratio,信噪比)S/PDIF(Sony/Phillips Digital Interface,索尼/飞利普数字接口)SRS: (Sound Retrieval System声音修复系统)Surround Sound(环绕立体声)Super Intelligent Sound ASIC(超级智能音频集成电路)THD+N(Total Harmonic Distortion plus Noise,总谐波失真加噪音)QEM(Qsound Environmental Modeling,Qsound环境建模扬声器组)WG(Wave Guide,波导合成)WT(Wave Table,波表合成)3D:(Three Dimensional,三维)3DS(3D SubSystem,三维子系统)AE(Atmospheric Effects,雾化效果)AFR(Alternate Frame Rendering,交替渲染技术)Anisotropic Filtering(各向异性过滤)APPE(Advanced Packet Parsing Engine,增强形帧解析引擎) AV(Analog Video,模拟视频)Back Buffer,后置缓冲Backface culling(隐面消除)Battle for Eyeballs(眼球大战,各3D图形芯片公司为了争夺用户而作的竞争)Bilinear Filtering(双线性过滤)CEM(cube environment mapping,立方环境映射)CG(Computer Graphics,计算机生成图像)Clipping(剪贴纹理)Clock Synthesizer,时钟合成器pressed textures(压缩纹理) Concurrent Command Engine,协作命令引擎Center Processing Unit Utilization,中央处理器占用率DAC(Digitalto Analog Converter,数模传换器)Decal(印花法,用于生成一些半透明效果,如:鲜血飞溅的场面)DFP(Digital Flat Panel,数字式平面显示器)DFS:( Dynamic Flat Shading动态平面描影,可用作加速Dithering抖动)Directional Light,方向性光源DME:( Direct Memory Execute直接内存执行)DOF(Depth of Field,多重境深)Double Buffering(双缓冲区)DIR(Direct Rendering Infrastructure,基层直接渲染)DVI(Digital Video Interface,数字视频接口)DxR:( DynamicXTended Resolution动态可扩展分辨率)DXTC(Direct X Texture Compress,DirectX纹理压缩,以S3TC为根底)Dynamic Z-buffering(动态Z轴缓冲区),显示物体远近,可用作远景E-DDC(Enhanced Display Data Channel,增强形视频数据通道协议,定义了显示输出与主系统之间的通讯通道,能提高显示输出的画面质量)Edge Anti-aliasing,边缘抗锯齿失真E-EDID(Enhanced Extended Identification Data,增强形扩充身份辨识数据,定义了电脑通讯视频主系统的数据格式)Execute Buffers,执行缓冲区environment mapped bump mapping(环境凹凸映射)Extended Burst Transactions,增强式突发处理Front Buffer,前置缓冲Flat(平面描影)Frames rate is King(帧数为王)FSAA(Full Scene Anti-aliasing,全景抗锯齿)Fog(雾化效果)flip double buffered(反转双缓存)fog table quality(雾化表画质)GART(Graphic Address Remappng Table,图形地址重绘表) Gouraud Shading,高洛德描影,也称为内插法均匀涂色GPU(Graphics Processing Unit,图形处理器)GTF(Generalized Timing Formula,一般程序时间,定义了产生画面所需要的时间,包括了诸如画面刷新率等)HAL(Hardware Abstraction Layer,硬件抽像化层)hardware motion pensation(硬件运动补偿)HDTV(high definition television,高清晰度电视)HEL: Hardware Emulation Layer(硬件模拟层)high triangle count(复杂三角形计数)ICD(Installable Client Driver,可安装客户端驱动程序) IDCT(Inverse Discrete Cosine Transform,非连续反余弦变换,GeForce的DVD硬件强化技术)Immediate Mode,直接模式IPPR: (Image Processing and Pattern Recognition图像处理和模式识别)large textures(大型纹理)LF(Linear Filtering,线性过滤,即双线性过滤)lighting(光源)lightmap(光线映射)Local Peripheral Bus(局域边缘总线)mipmapping(MIP映射)Modulate(调制混合)Motion Compensation,动态补偿motion blur(模糊移动)MPPS:(Million Pixels Per Second,百万个像素/秒)Multi-Resolution Mesh,多重分辨率组合Multi Threaded Bus Master,多重主控Multitexture(多重纹理)nerest Mipmap(邻近MIP映射,又叫点采样技术)Overdraw(透支,全景渲染造成的浪费)partial texture downloads(并行纹理传输)Parallel Processing Perspective Engine(平行透视处理器) PC(Perspective Correction,透视纠正)PGC(Parallel Graphics Configuration,并行图像设置)pixel(Picture element,图像元素,又称P像素,屏幕上的像素点)point light(一般点光源)Precise Pixel Interpolation,准确像素插值Procedural textures(可编程纹理)RAMDAC(Random Aess Memory Digital to Analog Converter,随机存储器数/模转换器)Reflection mapping(反射贴图)ender(着色或渲染)S端子(Seperate)S3(Sight、Sound、Speed,视频、音频、速度)S3TC(S3 Texture Compress,S3纹理压缩,仅支持S3显卡)S3TL(S3 Transformation & Lighting,S3多边形转换和光源处理)Screen Buffer(屏幕缓冲)SDTV(Standard Definition Television,标准清晰度电视)SEM(spherical environment mapping,球形环境映射)Shading,描影Single Pass Multi-Texturing,单通道多纹理SLI(Scanline Interleave,扫描线间插,3Dfx的双Voodoo 2配合技术)Smart Filter(智能过滤)soft shadows(柔和阴影)soft reflections(柔和反射)spot light(小型点光源)SRA(Symmetric Rendering Architecture,对称渲染架构)Stencil Buffers(模板缓冲)Stream Processor(流线处理)SuperScaler Rendering,超标量渲染TBFB(Tile Based Frame Buffer,碎片纹理帧缓存)texel(T像素,纹理上的像素点)Texture Fidelity(纹理真实性)texture swapping(纹理交换)T&L(Transform and Lighting,多边形转换与光源处理)T-Buffer(T缓冲,3dfx Voodoo4的特效,包括全景反锯齿Full-scene Anti-Aliasing、动态模糊Motion Blur、焦点模糊Depth of Field Blur、柔和阴影Soft Shadows、柔和反射Soft Reflections)TCA(Twin Cache Architecture,双缓存构造)Transparency(透明状效果)Transformation(三角形转换)Trilinear Filtering(三线性过滤)Texture Modes,材质模式TMIPM: (Trilinear MIP Mapping 三次线性MIP材质贴图)UMA(Unified Memory Architecture,统一内存架构)Visualize Geometry Engine,可视化几何引擎Vertex Lighting(顶点光源)Vertical Interpolation(垂直调变)VIP(Video Interface Port,视频接口)ViRGE: (Video and Rendering Graphics Engine视频描写图形引擎)Voxel(Volume pixels,立体像素,Novalogic的技术)VQTC(Vector-Quantization Texture Compression,向量纹理压缩)VSIS(Video Signal Standard,视频信号标准)v-sync(同步刷新)Z Buffer(Z缓存)ASIC: (Application Specific Integrated Circuit特殊应用积体电路)ASC(Auto-Sizing and Centering,自动调效屏幕尺寸和中心位置)ASC(Anti Static Coatings,防静电涂层)AGAS(Anti Glare Anti Static Coatings,防强光、防静电涂层)BLA: (Bearn Landing Area电子束落区)BMC(Black Matrix Screen,超黑矩阵屏幕)CRC: (Cyclical Redundancy Check循环冗余检查)CRT(Cathode Ray Tube,阴极射线管)DDC:(Display Data Channel,显示数据通道 )DEC(Direct Etching Coatings,外表蚀刻涂层)DFL(Dynamic Focus Lens,动态聚焦)DFS(Digital Flex Scan,数字伸缩扫描)DIC: (Digital Image Control数字图像控制)Digital Multiscan II(数字式智能多频追踪)DLP(digital Light Processing,数字光处理)DOSD:(Digital On Screen Display同屏数字化显示)DPMS(Display Power Management Signalling,显示能源管理信号)Dot Pitch(点距)DQL(Dynamic Quadrapole Lens,动态四极镜)DSP(Digital Signal Processing,数字信号处理)EFEAL(Extended Field Elliptical Aperture Lens,可扩展扫描椭圆孔镜头)FRC:(Frame Rate Control帧比率控制)HVD(High Voltage Differential,高分差动)LCD(liquid crystal display,液晶显示屏)LCOS: (Liquid Crystal On Silicon硅上液晶)LED(light emitting diode,光学二级管)L-SAGIC(Low Power-Small Aperture G1 wiht Impregnated Cathode,低电压光圈阴极管)LVD(Low Voltage Differential,低分差动)LVDS:(Low Voltage Differential Signal低电压差动信号) MALS(Multi Astigmatism Lens System,多重散光聚焦系统) MDA(Monochrome Adapter,单色设备)MS: (Magic Sensors磁场感应器)Porous Tungsten(活性钨)RSDS: (Reduced Swing Differential Signal小幅度摆动差动信号)SC(Screen Coatings,屏幕涂层)Single Ended(单终结)Shadow Mask(阴罩式)TDT(Timeing Detection Table,数据测定表)TICRG: (Tungsten Impregnated Cathode Ray Gun钨传输阴级射线枪)TFT(thin film transistor,薄膜晶体管)UCC(Ultra Clear Coatings,超清晰涂层)VAGP:( Variable Aperature Grille Pitch可变间距光栅) VBI:( Vertical Blanking Interval垂直空白间隙)VDT(Video Display Terminals,视频显示终端)VRR: (Vertical Refresh Rate垂直扫描频率 )ADIMM(advanced Dual In-line Memory Modules,高级双重内嵌式内存模块)AMR(Audio/Modem Riser;音效/调制解调器主机板附加直立插卡) AHA(Aelerated Hub Architecture,加速中心架构)ASK IR(Amplitude Shift Keyed Infra-Red,长波形可移动输入红外线)ATX: AT Extend(扩展型AT)BIOS(Basic Input/Output System,根本输入/输出系统)CSE(Configuration Space Enable,可分配空间)DB:(Device Bay,设备插架 )DMI(Desktop Management Interface,桌面管理接口)EB(Expansion Bus,扩展总线)EISA(Enhanced Industry Standard Architecture,增强形工业标准架构)EMI(Electromagic Interference,电磁干扰)ESCD(Extended System Configuration Data,可扩展系统配置数据)FBC(Frame Buffer Cache,帧缓冲缓存)FireWire(火线,即IEEE1394标准)FSB: (Front Side Bus,前置总线,即外部总线 )FWH( Firmware Hub,固件中心)GMCH(Graphics & Memory Controller Hub,图形和内存控制中心)GPIs(General Purpose Inputs,普通操作输入)ICH(Input/Output Controller Hub,输入/输出控制中心)IR(infrared ray,红外线)IrDA(infrared ray,红外线通信接口可进展局域网存取和文件共享)ISA:(Industry Standard Architecture,工业标准架构 )ISA(instruction set architecture,工业设置架构)MDC(Mobile Daughter Card,移动式子卡)MRH-R(Memory Repeater Hub,内存数据处理中心)MRH-S(SDRAM Repeater Hub,SDRAM数据处理中心)MTH(Memory Transfer Hub,内存转换中心)NGIO(Next Generation Input/Output,新一代输入/输出标准) P64H(64-bit PCI Controller Hub,64位PCI控制中心)PCB(printed circuit board,印刷电路板)PCBA(Printed Circuit Board Assembly,印刷电路板装配)PCI:(Peripheral Component Interconnect,互连外围设备 ) PCI SIG(Peripheral Component Interconnect Special Interest Group,互连外围设备专业组)POST(Power On Self Test,加电自测试)RNG(Random number Generator,随机数字发生器)RTC: (Real Time Clock 实时时钟)KBC(KeyBroad Control,键盘控制器)SAP(Sideband Address Port,边带寻址端口)SBA(Side Band Addressing,边带寻址)SMA: (Share Memory Architecture,共享内存构造 )STD(Suspend To Disk,磁盘唤醒)STR(Suspend To RAM,内存唤醒)SVR: (Switching Voltage Regulator 交换式电压调节)USB(Universal Serial Bus,通用串行总线)USDM(Unified System Diagnostic Manager,统一系统监测管理器)VID(Voltage Identification Definition,电压识别认证)VRM (Voltage Regulator Module,电压调整模块)ZIF: (Zero Insertion Force,零插力 )主板技术Gigabyte ACOPS:(Automatic CPU OverHeat Prevention SystemCPU 过热预防系统)SIV: (System Information Viewer系统信息观察)磐英ESDJ(Easy Setting Dual Jumper,简化CPU双重跳线法) 浩鑫UPT(USB、PANEL、LINK、TV-OUT四重接口)芯片组ACPI(Advanced Configuration and PowerInterface,先进设置和电源管理)AGP(Aelerated Graphics Port,图形加速接口)I/O(Input/Output,输入/输出)MIOC: (Memory and I/O Bridge Controller,内存和I/O桥控制器)NBC: (North Bridge Chip北桥芯片)PIIX: (PCI ISA/IDE Aelerator加速器)PSE36: (Page Size Extension 36-bit,36位页面尺寸扩展模式 )PXB:(PCI Expander Bridge,PCI增强桥 )RCG: (RAS/CAS Generator,RAS/CAS发生器 )SBC: (South Bridge Chip南桥芯片)SMB: (System Management Bus全系统管理总线)SPD(Serial Presence Detect,内存内部序号检测装置)SSB: (Super South Bridge,超级南桥芯片 )TDP:(Triton Data Path数据路径)TSC: (Triton System Controller系统控制器)QPA: (Quad Port Aeleration四接口加速)3DNow!(3D no waiting)ALU(Arithmetic Logic Unit,算术逻辑单元)AGU(Address Generation Units,地址产成单元)BGA(Ball Grid Array,球状矩阵排列)BHT(branch prediction table,分支预测表)BPU(Branch Processing Unit,分支处理单元)Brach Pediction(分支预测)CMOS: (Complementary Metal Oxide Semiconductor,互补金属氧化物半导体 )CISC(Complex Instruction Set Computing,复杂指令集计算机)CLK(Clock Cycle,时钟周期)COB(Cache on board,板上集成缓存)COD(Cache on Die,芯片内集成缓存)CPGA(Ceramic Pin Grid Array,陶瓷针型栅格阵列)CPU(Center Processing Unit,中央处理器)Data Forwarding(数据前送)Decode(指令解码)DIB(Dual Independent Bus,双独立总线)EC(Embedded Controller,嵌入式控制器)Embedded Chips(嵌入式)EPIC(explicitly parallel instruction code,并行指令代码) FADD(Floationg Point Addition,浮点加)FCPGA(Flip Chip Pin Grid Array,反转芯片针脚栅格阵列)FDIV(Floationg Point Divide,浮点除)FEMMS:(Fast Entry/Exit Multimedia State,快速进入/退出多媒体状态)FFT(fast Fourier transform,快速热欧姆转换)FID(FID:Frequency identify,频率鉴别号码)FIFO(First Input First Output,先入先出队列)flip-chip(芯片反转)FLOP(Floating Point Operations Per Second,浮点操作/秒) FMUL(Floationg Point Multiplication,浮点乘)FPU(Float Point Unit,浮点运算单元)FSUB(Floationg Point Subtraction,浮点减)GVPP(Generic Visual Perception Processor,常规视觉处理器)HL-PBGA:外表黏著,高耐热、轻薄型塑胶球状矩阵封装IA(Intel Architecture,英特尔架构)ICU(Instruction Control Unit,指令控制单元)ID:(identify,鉴别号码 )IDF(Intel Developer Forum,英特尔开发者论坛)IEU(Integer Execution Units,整数执行单元)IMM:( Intel Mobile Module,英特尔移动模块 )Instructions Cache,指令缓存Instruction Coloring(指令分类)IPC(Instructions Per Clock Cycle,指令/时钟周期)ISA(instruction set architecture,指令集架构)KNI(Katmai New Instructions,Katmai新指令集,即SSE)Latency(潜伏期)LDT(Lightning Data Transport,闪电数据传输总线)Local Interconnect(局域互连)MESI(Modified, Exclusive, Shared, Invalid:修改、排除、共享、废弃)MMX(MultiMedia Extensions,多媒体扩展指令集)MMU(Multimedia Unit,多媒体单元)MFLOPS(Million Floationg Point/Second,每秒百万个浮点操作)MHz(Million Hertz,兆赫兹)MP(Multi-Processing,多重处理器架构)MPS(MultiProcessor Specification,多重处理器标准)MSRs(Model-Specific Registers,特别模块存放器)NAOC(no-aount OverClock,无效超频)NI:(Non-Intel,非英特尔 )OLGA(Organic Land Grid Array,基板栅格阵列)OoO(Out of Order,乱序执行)PGA: Pin-Grid Array(引脚网格阵列),耗电大Post-RISC PR(Performance Rate,性能比率)PSN(Processor Serial numbers,处理器序列号)PIB(Processor In a Box,盒装处理器)PPGA(Plastic Pin Grid Array,塑胶针状矩阵封装)FP(Plastic Quad Flat Package,塑料方块平面封装)RAW(Read after Write,写后读)Register Contention(抢占存放器)Register Pressure(存放器缺乏)Register Renaming(存放器重命名)Remark(芯片频率重标识)Resource contention(资源冲突)Retirement(指令引退)RISC(Reduced Instruction Set Computing,精简指令集计算机)SEC:( Single Edge Connector,单边连接器 )Shallow-trench isolation(浅槽隔离)SIMD(Single Instruction Multiple Data,单指令多数据流) SiO2F(Fluorided Silicon Oxide,二氧氟化硅)SMI(System Management Interrupt,系统管理中断)SMM(System Management Mode,系统管理模式)SMP(Symmetric Multi-Processing,对称式多重处理架构)SOI: (Silicon-on-insulator,绝缘体硅片 )SONC(System on a chip,系统集成芯片)SPEC(System Performance Evaluation Corporation,系统性能评估测试)SQRT(Square Root Calculations,平方根计算)SSE(Streaming SIMD Extensions,单一指令多数据流扩展)Superscalar(超标量体系构造)TCP: Tape Carrier Package(薄膜封装),发热小Throughput(吞吐量)TLB(Translate Look side Buffers,翻译旁视缓冲器)USWC(Uncacheabled Speculative Write Combination,无缓冲随机联合写操作)VALU(Vector Arithmetic Logic Unit,向量算术逻辑单元)VLIW(Very Long Instruction Word,超长指令字)VPU(Vector Permutate Unit,向量排列单元)VPU(vector processing units,向量处理单元,即处理MMX、SSE等SIMD指令的地方)。

Grasshopper 电池命令翻译

Grasshopper 电池命令翻译

Params:参数Geometry:几何体Box: 立方体BRep: 边界表现形式Circle: 圆Circular Arc: 圆弧Curve: 曲线Geometry: 几何Line: 线Mesh: 网格面Plane: 平面Point: 点Surface: 表面Twisted box: 扭曲的立方体Vector: 矢量Primitive: 数据元素Boolean: 布尔型Colour: ARGB色彩Data: 数据Data Path: 数据分支Integer: 整型Interval: 区间Interval2: 二维区间Number: 双精度型浮点数Shader: 着色器String: 字符串型Time: 日期型Special: 专门的Bar Graph: 条形统计图Boolean Toggle: 布尔值切换器Colour Swatch: 色卡Custom Preview: 预览自定义Gradient: 多色彩渐变Graph Mapper:Number Slider: 数字滑动条Panel: 数据显示面板Param Viewer: 参数结构查看器Receiver: 数据接收器Logic 逻辑Boolean: 布尔运算Gate And: 并集Gate And Ternary: 三元并集Gate Majority:Gate Nand:Gate Nor:Gate Not:Gate Or:Gate Or Ternary:Gate Xnor:Gate Xor:List: 列表Dispatch: 分配(把一个列表中的项目分派到两个目标列表中)List Item: 清单项List Length: 列表长度(计算列表的长度)Null Item:空值(测试一个数据项是否无效)Reverse List: 反转列表Shift List: 移动列表Sort List: 分类列表Split List: 分拆列表Sub List: 次级列表(从一个列表中提取子集)Weave: 编排(使用自定义的式样编排输入流的设置)Script: 脚本DotNET C#Script: C#脚本DotNET VB Script: VB脚本F1 : 一元函数F2 : 二元函数F3 : 三元函数Variable Expression : 多元函数Sets: 集合Cull Nth : 选取元素(在列表中每n个选取元素)Cull Pattern : 选取图案(使用反复的掩码在列表中选取元素)Duplicate Date : 复制数据Fibonacci: 费班纳赛(创建一个费班纳赛序列)Jitter: 振动Random:Range: 范围Series: 数列Trees: 设计树Clean Tree: 清理设计树(把数据树中所有空项和无效数据清除掉)Create Branch: 创建分支(创建一个分支访问路径)Decompose Branch: 分解分支(分解分支访问路径)Flatten Tree: “夷平”设计树(把设计树中所有分支路径去除)Graft tree: 续接设计树Merge: 合并(把两个数据流合二为一)Merge Multiple: 合并多项(合并多个输入数据流为一个)Simplify Tree : 简化设计树(通过清除重复的可共享的分支简化设计树)Prune Tree: 修剪设计树(从设计树中去掉小的分支路径)Stream Filter: 数据流过滤器(过滤输入的数据流)Stream Gate: 数据流闸口(向一个指定的输出项重新传入数据流)Tree Branch: 设计树分支(从数据树中取回一个指定的分支)Tree Item: 设计树项目(从数据树中取回一个指定的项目)Scalar:标量Constants:常数:Epsilon: 艾普西龙(四舍五入双精度浮点数)Golden Ratio: 黄金分割比(1.618)Natural logarithm: 自然对数(2.718)Pi: 圆周率(3.14)Interval:区间:Bounds: 界限(围绕数字列表创建一个区间)Bounds 2D: 二维界限(围绕坐标列表创建一个二维的区间)Divide Interval: 均分区间Divide Interval2: 均分二维区间Interval: 区间Interval Components: 分解一维区间Interval2: 通过两个一维区间创建二维区间Interval2: 通过四个数字创建二维区间Interval2 Components: 分解一个二维区间到四个数字Interval2 Components: 分解一个二维区间到独立的一维区间Operators:运算符:Addition: 加法运算Division: 除法运算Equality: 等量代换Larger Than: 比较运算(大于)Modulus: 取模运算Multiplication: 乘法运算Power: 乘方运算Similarity: 近似运算Smaller Than: 比较运算(小于)Subtraction: 减法运算Polynomials:多项式:Factorial: 阶乘Log N: 求底数为N的对数Logarithm: 求10为底的对数Natural logarithm: 求以e为底的对数Power of 10: 10的乘方Power of 2: 2的乘方Power of E: E的乘方Trig:三角函数:ArcCosine: 反余弦函数ArcSine: 反正弦函数ArcTangent: 反正切函数Cosine: 余弦函数Sine: 正弦函数Tangent: 正切函数Util:公用:Mass Addition: 并集运算Maximum: 取最大值Mean: 取平均值Minimum: 取最小值Truncate:Vector:矢量:Colour: 色彩Add Colours : 颜色相加AHSV : 创建一个HSV色彩通道(浮点色彩)ARGB : 创建一个RGB色彩通道ARGB Fractional : 创建一个浮点RGB色彩通道Blend Colours : 混合色彩(在两个颜色中取插值)Create Shader : 创建OpenGL着色器Multiply Colours: 色彩倍增Split AHSV: 将颜色分解为HSV通道Split ARGB: 将颜色分解为RGB通道Subtract Colours: 减去颜色通道Constants: 常数:Unit X : 与X轴平行的矢量Unit Y : 与Y轴平行的矢量Unit Z : 与Z轴平行的矢量XY Plane : XY平面XZ Plane : XZ平面YZ Plane : YZ平面Plane:平面:Align Plane : 调整平面(执行最小的旋转调整平面到矢量指向)Align Planes :Plane : 在XY平面上创建一个平面Plane 3Pt : 过三点创建一个平面Plane Components: 把平面分解到其组成元素Plane Normal: 创建平面法线Rotate Plane : 绕Z轴旋转平面Point:点:Closest Point: 查找最近点Decompose : 把点分解到其组成元素Distance : 计算连个点坐标间的欧几里得距离Grid Hexagonal : 在每六个点之间生成六边形网格Grid Rectangular : 在点之间生成矩形网格Plane CP: 查找离平面最近的点Point Cylindrical: 在柱面坐标上创建点(角度,半径,标高)Point List: 点列表(显示坐标点的顺序列表)Point Oriented: 通过UVW坐标创建点Point Polar: 在球面坐标上创建点Point XYZ: 通过XYZ坐标创建点Pull Point: 把点拉至几何体Text Tag: 在rhino视图中创建文字标签Text Tag 3D: 在Rhino视图中创建三维文字标签Vector:矢量:Amplitude : 振幅(设置矢量的振幅)Angle : 角度(计算两个矢量间的夹角)Cross Product : 矢量叉积Decompose: 把矢量分解到其组成元素Dot Product: 矢量点积(计算连个矢量的数量积)Multiply: 执行矢量和标量的乘法运算Reverse: 矢量反向Summation: 求矢量的和Unit Vector:Vector 2Pt: 在两点间创建矢量Vector Length: 计算矢量的振幅Vector XYZ: 通过XYZ创建矢量Curve:曲线:Analysis:分析:Center: 查找圆或圆弧的圆点和半径Closed: 测试一条曲线是闭合的还是周期性的Curvature: 曲率(在指定的部位上评估一条曲线的曲率)Curvature Graph: 曲率图表(绘制Rhino的曲率图表)Curve CP: 在曲线上查找离指定点最近的点Curve Frame: 曲线骨架(在指定的部位上得到曲率骨架)Discontinuity: 不连续(沿曲线找出所有不连续点)End Points: 提取曲线端点Evaluate Curve: 评估曲线(在指定的部位上评估曲线)Evaluate Length: 评估长度(根据长度上一个特定的因子评估曲线,长度因子可以由曲线单元和法线单元提供,可以通过改变N参数来切换这两种模式)Explode: 炸开(把曲线分解到其组成元素)Horizontal Frame: 水平框架(在曲线上一个特定部位获取一个水平基准的框架)Length: 计算曲线长度Perp Frame: 垂直框架(在曲线上一个特定部位获取一个垂直基准的框架)Planer: 测试曲线平面性Division:分割:Curve Frames: 生成一系列等距曲线骨架Divide Curve: 等长度分割曲线Divide Distance: 用预设距离的点分割曲线Divide Length: 用预设长度分割曲线Hortzontal Frames: 产生一系列等位等高的曲线骨架Perp Frames: 用一系列垂直方向的等位骨架分割曲线Shatter: 按分段数打碎曲线Primitive:基本曲线:Arc: 圆弧(由基准面、半径、角度区间决定)Arc 3Pt: 过指定三点的圆弧Arc SED: SED圆弧(由起点、终点、切线矢量决定)BiArc: Bi曲线(由端点和切线决定)Circle : 圆(由指定平面和半径决定)Circle 3Pt: 过三个定点的圆Circle CNR: CNR圆(由圆心、旋转轴、半径决定)Ellipse : 椭圆(由指定平面和两个焦点决定)Line : 两点确定的线段Line SDL : SDL线段(由起点、正切方向、长度决定)Polygon : 多边形Rectangle: 矩形Spline:样条曲线:Bezier Span: 贝塞尔曲线Curve: 控制点曲线Curve On Surface: 创建一个在指定曲面上的内插点曲线Interpolate: 内插点曲线Iso Curve: ISO曲线(从曲线上提取的uv曲线)Kinky Curve: 混合式曲线(贝赛尔角点控制曲线)Poly Arc: 复合弧线(由圆弧和线段拼接而成)Poly Line: 复合线(连接各点组成的折线段)Sub Curve: 子曲线(从一条基本曲线上获得)Util:公用:Fillet: 接触点圆角Fillet Distance: 断点圆角Flip: 翻转曲线Join Curves: 结合曲线Offset: 偏移曲线Project: 投射曲线到复合曲面上(BRep曲面集合,即Rhino中的多重曲面)Surface:曲面:Analysis:分析:Box Components: 立方体元素(把立方体分解到其组成元素)Box Corners: 提取立方体角点BRep Area: 计算BRep(边界表示)的面积BRep Components: 把BRep(边界表示)分解到其组成元素BRep CP: 在BRep(边界表示)上查找离指定点最近的点BRep Volune: 计算BRep(边界表示)的体积BRep Wireframe: 提取BRep(边界表示)物体的线框Dimensions : 尺寸Evaluate Box: 在UVW空间评估一个立方体Evaluate Surface: 在UV坐标系上评估局部曲面特性Osc Circles: 圆上接触点(在指定的UV坐标系上计算出圆周上和曲面的交点)Principal Curvature: 助率(在指定的UV坐标系上计算出曲面的主曲率)Surface CP : 在曲面上查找离指定点最近的点Surface Curvature: 表面曲率在(指定的UV坐标系上计算出曲面的曲率)Trim Inclusion : 测试被修剪部分以内的UV点Freeform:自由曲面:4Point Surface: 由四点创建曲面Extrude: 沿矢量方向拉伸曲线或曲面Extrude Linear: 沿笔直路径拉伸曲线或曲面Extrude Point: 把曲面或曲线拉伸到指定点Loft: 沿界面曲线方向Offset: 定量偏移曲面Pipe: 沿轨道产生管状曲面Planar Srf: 从一系列边界曲线生成平坦面Rail Revolution: 通过绕轨道旋转生成曲面Revolution: 通过旋转生成曲面Sum Surface: 通过两条边界线生成曲面Surface From Point: 通过网格点生成nurbs曲面Sweep1 : 单轨扫描曲面Sweep2 : 双轨扫描曲面file:///C:\Users\JONES\AppData\Local\Temp\ksohtml\wpsB925.tmp.pngPrimitive:基本曲面:Bounding Box: 边界立方体(边界范围由需要被包含的集合体决定)Box 2Pt: 空间上两点决定的立方体Box Plane: 创建与一个矩形所在平面相匹配的立方体Center Box: 在平面的中心点创建立方体Cone: 圆锥体Cylinder: 圆柱体Interval Box: 由基准面和边长创建一个立方体Plane Srf: 平面Sphere: 球体Util:公用:Brep Join: 结合Brep(复合曲面)Cap Holes: 封闭所有Brep形(复合曲面)的平面开口Copy Trim: 复制修剪数据(将UV修剪数据从一个曲面复制到另一个)Divide Surface: 产生UV网格点分割曲面Flip: 翻转曲面法线Isotrim: 等参修剪(在曲面上提取由等参线分割的子集)Retrim: 再修剪(基于其它曲面的三维修剪数据)Surface Frames: 曲面框架(在曲面表面生成UV框架网格)Untrim: 撤销修剪(移除曲面上的所有切割线)Mesh:网格面:Primitive:基本网格面:Mesh: 网格面Mesh Box: 网格面立方体Mesh Plane: 网格平面Mesh Quad: 四边形网格Mesh Sphere: 网格球体Mesh Triangle: 三角面网格Triangulation:三角细分关系:Mesh BRep: 创建一个与现有BRep几何体相似的网格面Mesh Surface: 网格表面Settings (Custom): 描绘自定义网格设置Settings (Quality): 描绘高质量光滑曲面设置Settings (Speed): 快速描绘不带抗锯齿的曲面设置Util:公用:Face Components: 分解一个单元网格面到其组成元素Mesh Components: 分解一个网格面到其组成元素Mesh Paint: 指派一个反复的色彩图案到网格面物体Intersect:交集:Boolean:布尔:Region Difference: 差集(适用于平面闭合曲线)Region Intersection: 交集(适用于平面闭合曲线)Region Union: 并集(适用于平面闭合曲线)Solid Difference: 实体差集(适用于BRep形)Solid Intersection: 实体交集(适用于BRep形)Solid Union: 实体并集(适用于BRep形)Mathematical:数学:BRep | Line: 处理复合曲面和线段的交集问题BRep | Plane: 处理复合曲面和平面的交集问题(计算剖面)Curve | Line: 处理曲线和线段的交集问题Curve | Plane: 处理曲线和平面的交集问题Line | Plane: 处理平面和线段的交集问题Plane | Plane: 处理平面和平面的交集问题(计算面面交线)Plane | Plane | Plane: 处理三个平面的交集问题Surface | Line: 处理曲面和线段的交集问题Physical:物理:BRep | BRep: 处理两个复合曲面的交集问题BRep | Curve: 处理复合曲面和曲线的交集问题Curve | Curve: 处理曲线和曲线的交集问题Surface | Curve: 处理曲面和曲线的交集问题Region:区域:Split with BRep: 用复合曲面分割曲线Split with BReps: 用多个符合曲面分割曲线Trim with BRep: 用复合曲面修剪曲线Trim with BReps: 用多个符合曲面修剪曲线Trim with Region: 用一个范围修剪曲线Trim with Regions: 用多个范围修剪曲线XForm:变换:file:///C:\Users\JONES\AppData\Local\Temp\ksohtml\wpsB986.tmp.png Affine:仿射:Orient Direction: 指定方向Project: 将物体映射到平面Scale: 缩放物体(所有方向均匀缩放)Scale NU: 非均匀缩放物体Shear : 扭曲(按矢量扭曲方向扭曲变换物体)Shear Angle: 角度扭曲(按倾斜角度扭曲物体)Euclidian:欧几里得:Mirror: 镜像Move: 移动Orient: 转向(将几何体从一个坐标系重映射到另一个坐标系)Rotate: 旋转(在平面内旋转物体)Rotate Axis: 绕轴旋转物体Morph:变形:Blend Box: 在两个平面间建立立方体Box Morph: 扭曲立方体Camera Obscura: 针孔照相机Mirror Curve: 以自由曲线为基准镜像Mirror Surface: 以自由曲面为基准镜像Surface Box: 在曲面块上创建扭曲立方体Surface Morph: 将几何体变形到曲面UVW坐标系Twisted Box: 利用角点创建扭曲立方体。

ABSTRACT Progressive Simplicial Complexes

ABSTRACT Progressive Simplicial Complexes

Progressive Simplicial Complexes Jovan Popovi´c Hugues HoppeCarnegie Mellon University Microsoft ResearchABSTRACTIn this paper,we introduce the progressive simplicial complex(PSC) representation,a new format for storing and transmitting triangu-lated geometric models.Like the earlier progressive mesh(PM) representation,it captures a given model as a coarse base model together with a sequence of refinement transformations that pro-gressively recover detail.The PSC representation makes use of a more general refinement transformation,allowing the given model to be an arbitrary triangulation(e.g.any dimension,non-orientable, non-manifold,non-regular),and the base model to always consist of a single vertex.Indeed,the sequence of refinement transforma-tions encodes both the geometry and the topology of the model in a unified multiresolution framework.The PSC representation retains the advantages of PM’s.It defines a continuous sequence of approx-imating models for runtime level-of-detail control,allows smooth transitions between any pair of models in the sequence,supports progressive transmission,and offers a space-efficient representa-tion.Moreover,by allowing changes to topology,the PSC sequence of approximations achieves betterfidelity than the corresponding PM sequence.We develop an optimization algorithm for constructing PSC representations for graphics surface models,and demonstrate the framework on models that are both geometrically and topologically complex.CR Categories:I.3.5[Computer Graphics]:Computational Geometry and Object Modeling-surfaces and object representations.Additional Keywords:model simplification,level-of-detail representa-tions,multiresolution,progressive transmission,geometry compression.1INTRODUCTIONModeling and3D scanning systems commonly give rise to triangle meshes of high complexity.Such meshes are notoriously difficult to render,store,and transmit.One approach to speed up rendering is to replace a complex mesh by a set of level-of-detail(LOD) approximations;a detailed mesh is used when the object is close to the viewer,and coarser approximations are substituted as the object recedes[6,8].These LOD approximations can be precomputed Work performed while at Microsoft Research.Email:jovan@,hhoppe@Web:/jovan/Web:/hoppe/automatically using mesh simplification methods(e.g.[2,10,14,20,21,22,24,27]).For efficient storage and transmission,meshcompression schemes[7,26]have also been developed.The recently introduced progressive mesh(PM)representa-tion[13]provides a unified solution to these problems.In PM form,an arbitrary mesh M is stored as a coarse base mesh M0together witha sequence of n detail records that indicate how to incrementally re-fine M0into M n=M(see Figure7).Each detail record encodes theinformation associated with a vertex split,an elementary transfor-mation that adds one vertex to the mesh.In addition to defininga continuous sequence of approximations M0M n,the PM rep-resentation supports smooth visual transitions(geomorphs),allowsprogressive transmission,and makes an effective mesh compressionscheme.The PM representation has two restrictions,however.First,it canonly represent meshes:triangulations that correspond to orientable12-dimensional manifolds.Triangulated2models that cannot be rep-resented include1-d manifolds(open and closed curves),higherdimensional polyhedra(e.g.triangulated volumes),non-orientablesurfaces(e.g.M¨o bius strips),non-manifolds(e.g.two cubes joinedalong an edge),and non-regular models(i.e.models of mixed di-mensionality).Second,the expressiveness of the PM vertex splittransformations constrains all meshes M0M n to have the same topological type.Therefore,when M is topologically complex,the simplified base mesh M0may still have numerous triangles(Fig-ure7).In contrast,a number of existing simplification methods allowtopological changes as the model is simplified(Section6).Ourwork is inspired by vertex unification schemes[21,22],whichmerge vertices of the model based on geometric proximity,therebyallowing genus modification and component merging.In this paper,we introduce the progressive simplicial complex(PSC)representation,a generalization of the PM representation thatpermits topological changes.The key element of our approach isthe introduction of a more general refinement transformation,thegeneralized vertex split,that encodes changes to both the geometryand topology of the model.The PSC representation expresses anarbitrary triangulated model M(e.g.any dimension,non-orientable,non-manifold,non-regular)as the result of successive refinementsapplied to a base model M1that always consists of a single vertex (Figure8).Thus both geometric and topological complexity are recovered progressively.Moreover,the PSC representation retains the advantages of PM’s,including continuous LOD,geomorphs, progressive transmission,and model compression.In addition,we develop an optimization algorithm for construct-ing a PSC representation from a given model,as described in Sec-tion4.1The particular parametrization of vertex splits in[13]assumes that mesh triangles are consistently oriented.2Throughout this paper,we use the words“triangulated”and“triangula-tion”in the general dimension-independent sense.Figure 1:Illustration of a simplicial complex K and some of its subsets.2BACKGROUND2.1Concepts from algebraic topologyTo precisely define both triangulated models and their PSC repre-sentations,we find it useful to introduce some elegant abstractions from algebraic topology (e.g.[15,25]).The geometry of a triangulated model is denoted as a tuple (K V )where the abstract simplicial complex K is a combinatorial structure specifying the adjacency of vertices,edges,triangles,etc.,and V is a set of vertex positions specifying the shape of the model in 3.More precisely,an abstract simplicial complex K consists of a set of vertices 1m together with a set of non-empty subsets of the vertices,called the simplices of K ,such that any set consisting of exactly one vertex is a simplex in K ,and every non-empty subset of a simplex in K is also a simplex in K .A simplex containing exactly d +1vertices has dimension d and is called a d -simplex.As illustrated pictorially in Figure 1,the faces of a simplex s ,denoted s ,is the set of non-empty subsets of s .The star of s ,denoted star(s ),is the set of simplices of which s is a face.The children of a d -simplex s are the (d 1)-simplices of s ,and its parents are the (d +1)-simplices of star(s ).A simplex with exactly one parent is said to be a boundary simplex ,and one with no parents a principal simplex .The dimension of K is the maximum dimension of its simplices;K is said to be regular if all its principal simplices have the same dimension.To form a triangulation from K ,identify its vertices 1m with the standard basis vectors 1m ofm.For each simplex s ,let the open simplex smdenote the interior of the convex hull of its vertices:s =m:jmj =1j=1jjsThe topological realization K is defined as K =K =s K s .The geometric realization of K is the image V (K )where V :m 3is the linear map that sends the j -th standard basis vector jm to j 3.Only a restricted set of vertex positions V =1m lead to an embedding of V (K )3,that is,prevent self-intersections.The geometric realization V (K )is often called a simplicial complex or polyhedron ;it is formed by an arbitrary union of points,segments,triangles,tetrahedra,etc.Note that there generally exist many triangulations (K V )for a given polyhedron.(Some of the vertices V may lie in the polyhedron’s interior.)Two sets are said to be homeomorphic (denoted =)if there ex-ists a continuous one-to-one mapping between them.Equivalently,they are said to have the same topological type .The topological realization K is a d-dimensional manifold without boundary if for each vertex j ,star(j )=d .It is a d-dimensional manifold if each star(v )is homeomorphic to either d or d +,where d +=d:10.Two simplices s 1and s 2are d-adjacent if they have a common d -dimensional face.Two d -adjacent (d +1)-simplices s 1and s 2are manifold-adjacent if star(s 1s 2)=d +1.Figure 2:Illustration of the edge collapse transformation and its inverse,the vertex split.Transitive closure of 0-adjacency partitions K into connected com-ponents .Similarly,transitive closure of manifold-adjacency parti-tions K into manifold components .2.2Review of progressive meshesIn the PM representation [13],a mesh with appearance attributes is represented as a tuple M =(K V D S ),where the abstract simpli-cial complex K is restricted to define an orientable 2-dimensional manifold,the vertex positions V =1m determine its ge-ometric realization V (K )in3,D is the set of discrete material attributes d f associated with 2-simplices f K ,and S is the set of scalar attributes s (v f )(e.g.normals,texture coordinates)associated with corners (vertex-face tuples)of K .An initial mesh M =M n is simplified into a coarser base mesh M 0by applying a sequence of n successive edge collapse transforma-tions:(M =M n )ecol n 1ecol 1M 1ecol 0M 0As shown in Figure 2,each ecol unifies the two vertices of an edgea b ,thereby removing one or two triangles.The position of the resulting unified vertex can be arbitrary.Because the edge collapse transformation has an inverse,called the vertex split transformation (Figure 2),the process can be reversed,so that an arbitrary mesh M may be represented as a simple mesh M 0together with a sequence of n vsplit records:M 0vsplit 0M 1vsplit 1vsplit n 1(M n =M )The tuple (M 0vsplit 0vsplit n 1)forms a progressive mesh (PM)representation of M .The PM representation thus captures a continuous sequence of approximations M 0M n that can be quickly traversed for interac-tive level-of-detail control.Moreover,there exists a correspondence between the vertices of any two meshes M c and M f (0c f n )within this sequence,allowing for the construction of smooth vi-sual transitions (geomorphs)between them.A sequence of such geomorphs can be precomputed for smooth runtime LOD.In addi-tion,PM’s support progressive transmission,since the base mesh M 0can be quickly transmitted first,followed the vsplit sequence.Finally,the vsplit records can be encoded concisely,making the PM representation an effective scheme for mesh compression.Topological constraints Because the definitions of ecol and vsplit are such that they preserve the topological type of the mesh (i.e.all K i are homeomorphic),there is a constraint on the min-imum complexity that K 0may achieve.For instance,it is known that the minimal number of vertices for a closed genus g mesh (ori-entable 2-manifold)is (7+(48g +1)12)2if g =2(10if g =2)[16].Also,the presence of boundary components may further constrain the complexity of K 0.Most importantly,K may consist of a number of components,and each is required to appear in the base mesh.For example,the meshes in Figure 7each have 117components.As evident from the figure,the geometry of PM meshes may deteriorate severely as they approach topological lower bound.M 1;100;(1)M 10;511;(7)M 50;4656;(12)M 200;1552277;(28)M 500;3968690;(58)M 2000;14253219;(108)M 5000;029010;(176)M n =34794;0068776;(207)Figure 3:Example of a PSC representation.The image captions indicate the number of principal 012-simplices respectively and the number of connected components (in parenthesis).3PSC REPRESENTATION 3.1Triangulated modelsThe first step towards generalizing PM’s is to let the PSC repre-sentation encode more general triangulated models,instead of just meshes.We denote a triangulated model as a tuple M =(K V D A ).The abstract simplicial complex K is not restricted to 2-manifolds,but may in fact be arbitrary.To represent K in memory,we encode the incidence graph of the simplices using the following linked structures (in C++notation):struct Simplex int dim;//0=vertex,1=edge,2=triangle,...int id;Simplex*children[MAXDIM+1];//[0..dim]List<Simplex*>parents;;To render the model,we draw only the principal simplices ofK ,denoted (K )(i.e.vertices not adjacent to edges,edges not adjacent to triangles,etc.).The discrete attributes D associate amaterial identifier d s with each simplex s(K ).For the sake of simplicity,we avoid explicitly storing surface normals at “corners”(using a set S )as done in [13].Instead we let the material identifier d s contain a smoothing group field [28],and let a normal discontinuity (crease )form between any pair of adjacent triangles with different smoothing groups.Previous vertex unification schemes [21,22]render principal simplices of dimension 0and 1(denoted 01(K ))as points and lines respectively with fixed,device-dependent screen widths.To better approximate the model,we instead define a set A that associates an area a s A with each simplex s 01(K ).We think of a 0-simplex s 00(K )as approximating a sphere with area a s 0,and a 1-simplex s 1=j k 1(K )as approximating a cylinder (with axis (j k ))of area a s 1.To render a simplex s 01(K ),we determine the radius r model of the corresponding sphere or cylinder in modeling space,and project the length r model to obtain the radius r screen in screen pixels.Depending on r screen ,we render the simplex as a polygonal sphere or cylinder with radius r model ,a 2D point or line with thickness 2r screen ,or do not render it at all.This choice based on r screen can be adjusted to mitigate the overhead of introducing polygonal representations of spheres and cylinders.As an example,Figure 3shows an initial model M of 68,776triangles.One of its approximations M 500is a triangulated model with 3968690principal 012-simplices respectively.3.2Level-of-detail sequenceAs in progressive meshes,from a given triangulated model M =M n ,we define a sequence of approximations M i :M 1op 1M 2op 2M n1op n 1M nHere each model M i has exactly i vertices.The simplification op-erator M ivunify iM i +1is the vertex unification transformation,whichmerges two vertices (Section 3.3),and its inverse M igvspl iM i +1is the generalized vertex split transformation (Section 3.4).Thetuple (M 1gvspl 1gvspl n 1)forms a progressive simplicial complex (PSC)representation of M .To construct a PSC representation,we first determine a sequence of vunify transformations simplifying M down to a single vertex,as described in Section 4.After reversing these transformations,we renumber the simplices in the order that they are created,so thateach gvspl i (a i)splits the vertex a i K i into two vertices a i i +1K i +1.As vertices may have different positions in the different models,we denote the position of j in M i as i j .To better approximate a surface model M at lower complexity levels,we initially associate with each (principal)2-simplex s an area a s equal to its triangle area in M .Then,as the model is simplified,wekeep constant the sum of areas a s associated with principal simplices within each manifold component.When2-simplices are eventually reduced to principal1-simplices and0-simplices,their associated areas will provide good estimates of the original component areas.3.3Vertex unification transformationThe transformation vunify(a i b i midp i):M i M i+1takes an arbitrary pair of vertices a i b i K i+1(simplex a i b i need not be present in K i+1)and merges them into a single vertex a i K i. Model M i is created from M i+1by updating each member of the tuple(K V D A)as follows:K:References to b i in all simplices of K are replaced by refer-ences to a i.More precisely,each simplex s in star(b i)K i+1is replaced by simplex(s b i)a i,which we call the ancestor simplex of s.If this ancestor simplex already exists,s is deleted.V:Vertex b is deleted.For simplicity,the position of the re-maining(unified)vertex is set to either the midpoint or is left unchanged.That is,i a=(i+1a+i+1b)2if the boolean parameter midp i is true,or i a=i+1a otherwise.D:Materials are carried through as expected.So,if after the vertex unification an ancestor simplex(s b i)a i K i is a new principal simplex,it receives its material from s K i+1if s is a principal simplex,or else from the single parent s a i K i+1 of s.A:To maintain the initial areas of manifold components,the areasa s of deleted principal simplices are redistributed to manifold-adjacent neighbors.More concretely,the area of each princi-pal d-simplex s deleted during the K update is distributed toa manifold-adjacent d-simplex not in star(a ib i).If no suchneighbor exists and the ancestor of s is a principal simplex,the area a s is distributed to that ancestor simplex.Otherwise,the manifold component(star(a i b i))of s is being squashed be-tween two other manifold components,and a s is discarded. 3.4Generalized vertex split transformation Constructing the PSC representation involves recording the infor-mation necessary to perform the inverse of each vunify i.This inverse is the generalized vertex split gvspl i,which splits a0-simplex a i to introduce an additional0-simplex b i.(As mentioned previously, renumbering of simplices implies b i i+1,so index b i need not be stored explicitly.)Each gvspl i record has the formgvspl i(a i C K i midp i()i C D i C A i)and constructs model M i+1from M i by updating the tuple (K V D A)as follows:K:As illustrated in Figure4,any simplex adjacent to a i in K i can be the vunify result of one of four configurations in K i+1.To construct K i+1,we therefore replace each ancestor simplex s star(a i)in K i by either(1)s,(2)(s a i)i+1,(3)s and(s a i)i+1,or(4)s,(s a i)i+1and s i+1.The choice is determined by a split code associated with s.Thesesplit codes are stored as a code string C Ki ,in which the simplicesstar(a i)are sortedfirst in order of increasing dimension,and then in order of increasing simplex id,as shown in Figure5. V:The new vertex is assigned position i+1i+1=i ai+()i.Theother vertex is given position i+1ai =i ai()i if the boolean pa-rameter midp i is true;otherwise its position remains unchanged.D:The string C Di is used to assign materials d s for each newprincipal simplex.Simplices in C Di ,as well as in C Aibelow,are sorted by simplex dimension and simplex id as in C Ki. A:During reconstruction,we are only interested in the areas a s fors01(K).The string C Ai tracks changes in these areas.Figure4:Effects of split codes on simplices of various dimensions.code string:41422312{}Figure5:Example of split code encoding.3.5PropertiesLevels of detail A graphics application can efficiently transitionbetween models M1M n at runtime by performing a sequence ofvunify or gvspl transformations.Our current research prototype wasnot designed for efficiency;it attains simplification rates of about6000vunify/sec and refinement rates of about5000gvspl/sec.Weexpect that a careful redesign using more efficient data structureswould significantly improve these rates.Geomorphs As in the PM representation,there exists a corre-spondence between the vertices of the models M1M n.Given acoarser model M c and afiner model M f,1c f n,each vertexj K f corresponds to a unique ancestor vertex f c(j)K cfound by recursively traversing the ancestor simplex relations:f c(j)=j j cf c(a j1)j cThis correspondence allows the creation of a smooth visual transi-tion(geomorph)M G()such that M G(1)equals M f and M G(0)looksidentical to M c.The geomorph is defined as the modelM G()=(K f V G()D f A G())in which each vertex position is interpolated between its originalposition in V f and the position of its ancestor in V c:Gj()=()fj+(1)c f c(j)However,we must account for the special rendering of principalsimplices of dimension0and1(Section3.1).For each simplexs01(K f),we interpolate its area usinga G s()=()a f s+(1)a c swhere a c s=0if s01(K c).In addition,we render each simplexs01(K c)01(K f)using area a G s()=(1)a c s.The resultinggeomorph is visually smooth even as principal simplices are intro-duced,removed,or change dimension.The accompanying video demonstrates a sequence of such geomorphs.Progressive transmission As with PM’s,the PSC representa-tion can be progressively transmitted by first sending M 1,followed by the gvspl records.Unlike the base mesh of the PM,M 1always consists of a single vertex,and can therefore be sent in a fixed-size record.The rendering of lower-dimensional simplices as spheres and cylinders helps to quickly convey the overall shape of the model in the early stages of transmission.Model compression Although PSC gvspl are more general than PM vsplit transformations,they offer a surprisingly concise representation of M .Table 1lists the average number of bits re-quired to encode each field of the gvspl records.Using arithmetic coding [30],the vertex id field a i requires log 2i bits,and the boolean parameter midp i requires 0.6–0.9bits for our models.The ()i delta vector is quantized to 16bitsper coordinate (48bits per),and stored as a variable-length field [7,13],requiring about 31bits on average.At first glance,each split code in the code string C K i seems to have 4possible outcomes (except for the split code for 0-simplex a i which has only 2possible outcomes).However,there exist constraints between these split codes.For example,in Figure 5,the code 1for 1-simplex id 1implies that 2-simplex id 1also has code 1.This in turn implies that 1-simplex id 2cannot have code 2.Similarly,code 2for 1-simplex id 3implies a code 2for 2-simplex id 2,which in turn implies that 1-simplex id 4cannot have code 1.These constraints,illustrated in the “scoreboard”of Figure 6,can be summarized using the following two rules:(1)If a simplex has split code c12,all of its parents havesplit code c .(2)If a simplex has split code 3,none of its parents have splitcode 4.As we encode split codes in C K i left to right,we apply these two rules (and their contrapositives)transitively to constrain the possible outcomes for split codes yet to be ing arithmetic coding with uniform outcome probabilities,these constraints reduce the code string length in Figure 6from 15bits to 102bits.In our models,the constraints reduce the code string from 30bits to 14bits on average.The code string is further reduced using a non-uniform probability model.We create an array T [0dim ][015]of encoding tables,indexed by simplex dimension (0..dim)and by the set of possible (constrained)split codes (a 4-bit mask).For each simplex s ,we encode its split code c using the probability distribution found in T [s dim ][s codes mask ].For 2-dimensional models,only 10of the 48tables are non-trivial,and each table contains at most 4probabilities,so the total size of the probability model is small.These encoding tables reduce the code strings to approximately 8bits as shown in Table 1.By comparison,the PM representation requires approximately 5bits for the same information,but of course it disallows topological changes.To provide more intuition for the efficiency of the PSC repre-sentation,we note that capturing the connectivity of an average 2-manifold simplicial complex (n vertices,3n edges,and 2n trian-gles)requires ni =1(log 2i +8)n (log 2n +7)bits with PSC encoding,versus n (12log 2n +95)bits with a traditional one-way incidence graph representation.For improved compression,it would be best to use a hybrid PM +PSC representation,in which the more concise PM vertex split encoding is used when the local neighborhood is an orientableFigure 6:Constraints on the split codes for the simplices in the example of Figure 5.Table 1:Compression results and construction times.Object#verts Space required (bits/n )Trad.Con.n K V D Arepr.time a i C K i midp i (v )i C D i C Ai bits/n hrs.drumset 34,79412.28.20.928.1 4.10.453.9146.1 4.3destroyer 83,79913.38.30.723.1 2.10.347.8154.114.1chandelier 36,62712.47.60.828.6 3.40.853.6143.6 3.6schooner 119,73413.48.60.727.2 2.5 1.353.7148.722.2sandal 4,6289.28.00.733.4 1.50.052.8123.20.4castle 15,08211.0 1.20.630.70.0-43.5-0.5cessna 6,7959.67.60.632.2 2.50.152.6132.10.5harley 28,84711.97.90.930.5 1.40.453.0135.7 3.52-dimensional manifold (this occurs on average 93%of the time in our examples).To compress C D i ,we predict the material for each new principalsimplex sstar(a i )star(b i )K i +1by constructing an ordered set D s of materials found in star(a i )K i .To improve the coding model,the first materials in D s are those of principal simplices in star(s )K i where s is the ancestor of s ;the remainingmaterials in star(a i )K i are appended to D s .The entry in C D i associated with s is the index of its material in D s ,encoded arithmetically.If the material of s is not present in D s ,it is specified explicitly as a global index in D .We encode C A i by specifying the area a s for each new principalsimplex s 01(star(a i )star(b i ))K i +1.To account for this redistribution of area,we identify the principal simplex from which s receives its area by specifying its index in 01(star(a i ))K i .The column labeled in Table 1sums the bits of each field of the gvspl records.Multiplying by the number n of vertices in M gives the total number of bits for the PSC representation of the model (e.g.500KB for the destroyer).By way of compari-son,the next column shows the number of bits per vertex required in a traditional “IndexedFaceSet”representation,with quantization of 16bits per coordinate and arithmetic coding of face materials (3n 16+2n 3log 2n +materials).4PSC CONSTRUCTIONIn this section,we describe a scheme for iteratively choosing pairs of vertices to unify,in order to construct a PSC representation.Our algorithm,a generalization of [13],is time-intensive,seeking high quality approximations.It should be emphasized that many quality metrics are possible.For instance,the quadric error metric recently introduced by Garland and Heckbert [9]provides a different trade-off of execution speed and visual quality.As in [13,20],we first compute a cost E for each candidate vunify transformation,and enter the candidates into a priority queueordered by ascending cost.Then,in each iteration i =n 11,we perform the vunify at the front of the queue and update the costs of affected candidates.4.1Forming set of candidate vertex pairs In principle,we could enter all possible pairs of vertices from M into the priority queue,but this would be prohibitively expensive since simplification would then require at least O(n2log n)time.Instead, we would like to consider only a smaller set of candidate vertex pairs.Naturally,should include the1-simplices of K.Additional pairs should also be included in to allow distinct connected com-ponents of M to merge and to facilitate topological changes.We considered several schemes for forming these additional pairs,in-cluding binning,octrees,and k-closest neighbor graphs,but opted for the Delaunay triangulation because of its adaptability on models containing components at different scales.We compute the Delaunay triangulation of the vertices of M, represented as a3-dimensional simplicial complex K DT.We define the initial set to contain both the1-simplices of K and the subset of1-simplices of K DT that connect vertices in different connected components of K.During the simplification process,we apply each vertex unification performed on M to as well in order to keep consistent the set of candidate pairs.For models in3,star(a i)has constant size in the average case,and the overall simplification algorithm requires O(n log n) time.(In the worst case,it could require O(n2log n)time.)4.2Selecting vertex unifications fromFor each candidate vertex pair(a b),the associated vunify(a b):M i M i+1is assigned the costE=E dist+E disc+E area+E foldAs in[13],thefirst term is E dist=E dist(M i)E dist(M i+1),where E dist(M)measures the geometric accuracy of the approximate model M.Conceptually,E dist(M)approximates the continuous integralMd2(M)where d(M)is the Euclidean distance of the point to the closest point on M.We discretize this integral by defining E dist(M)as the sum of squared distances to M from a dense set of points X sampled from the original model M.We sample X from the set of principal simplices in K—a strategy that generalizes to arbitrary triangulated models.In[13],E disc(M)measures the geometric accuracy of disconti-nuity curves formed by a set of sharp edges in the mesh.For the PSC representation,we generalize the concept of sharp edges to that of sharp simplices in K—a simplex is sharp either if it is a boundary simplex or if two of its parents are principal simplices with different material identifiers.The energy E disc is defined as the sum of squared distances from a set X disc of points sampled from sharp simplices to the discontinuity components from which they were sampled.Minimization of E disc therefore preserves the geom-etry of material boundaries,normal discontinuities(creases),and triangulation boundaries(including boundary curves of a surface and endpoints of a curve).We have found it useful to introduce a term E area that penalizes surface stretching(a more sophisticated version of the regularizing E spring term of[13]).Let A i+1N be the sum of triangle areas in the neighborhood star(a i)star(b i)K i+1,and A i N the sum of triangle areas in star(a i)K i.The mean squared displacement over the neighborhood N due to the change in area can be approx-imated as disp2=12(A i+1NA iN)2.We let E area=X N disp2,where X N is the number of points X projecting in the neighborhood. To prevent model self-intersections,the last term E fold penalizes surface folding.We compute the rotation of each oriented triangle in the neighborhood due to the vertex unification(as in[10,20]).If any rotation exceeds a threshold angle value,we set E fold to a large constant.Unlike[13],we do not optimize over the vertex position i a, but simply evaluate E for i a i+1a i+1b(i+1a+i+1b)2and choose the best one.This speeds up the optimization,improves model compression,and allows us to introduce non-quadratic energy terms like E area.5RESULTSTable1gives quantitative results for the examples in thefigures and in the video.Simplification times for our prototype are measured on an SGI Indigo2Extreme(150MHz R4400).Although these times may appear prohibitive,PSC construction is an off-line task that only needs to be performed once per model.Figure9highlights some of the benefits of the PSC representa-tion.The pearls in the chandelier model are initially disconnected tetrahedra;these tetrahedra merge and collapse into1-d curves in lower-complexity approximations.Similarly,the numerous polyg-onal ropes in the schooner model are simplified into curves which can be rendered as line segments.The straps of the sandal model initially have some thickness;the top and bottom sides of these straps merge in the simplification.Also note the disappearance of the holes on the sandal straps.The castle example demonstrates that the original model need not be a mesh;here M is a1-dimensional non-manifold obtained by extracting edges from an image.6RELATED WORKThere are numerous schemes for representing and simplifying tri-angulations in computer graphics.A common special case is that of subdivided2-manifolds(meshes).Garland and Heckbert[12] provide a recent survey of mesh simplification techniques.Several methods simplify a given model through a sequence of edge col-lapse transformations[10,13,14,20].With the exception of[20], these methods constrain edge collapses to preserve the topological type of the model(e.g.disallow the collapse of a tetrahedron into a triangle).Our work is closely related to several schemes that generalize the notion of edge collapse to that of vertex unification,whereby separate connected components of the model are allowed to merge and triangles may be collapsed into lower dimensional simplices. Rossignac and Borrel[21]overlay a uniform cubical lattice on the object,and merge together vertices that lie in the same cubes. Schaufler and St¨u rzlinger[22]develop a similar scheme in which vertices are merged using a hierarchical clustering algorithm.Lue-bke[18]introduces a scheme for locally adapting the complexity of a scene at runtime using a clustering octree.In these schemes, the approximating models correspond to simplicial complexes that would result from a set of vunify transformations(Section3.3).Our approach differs in that we order the vunify in a carefully optimized sequence.More importantly,we define not only a simplification process,but also a new representation for the model using an en-coding of gvspl=vunify1transformations.Recent,independent work by Schmalstieg and Schaufler[23]de-velops a similar strategy of encoding a model using a sequence of vertex split transformations.Their scheme differs in that it tracks only triangles,and therefore requires regular,2-dimensional trian-gulations.Hence,it does not allow lower-dimensional simplices in the model approximations,and does not generalize to higher dimensions.Some simplification schemes make use of an intermediate vol-umetric representation to allow topological changes to the model. He et al.[11]convert a mesh into a binary inside/outside function discretized on a three-dimensional grid,low-passfilter this function,。

grasshopper中文版运算器名称对照翻译

grasshopper中文版运算器名称对照翻译

Params:参数Geometry:几何体Box: 立方体BRep: 边界表现形式Circle: 圆Circular Arc: 圆弧Curve: 曲线Geometry: 几何Line: 线Mesh: 网格面Plane: 平面Point: 点Surface: 表面Twisted box: 扭曲的立方体Vector: 矢量Primitive: 数据元素Boolean: 布尔型Colour: ARGB色彩Data: 数据Data Path: 数据分支Integer: 整型Interval: 区间Interval2: 二维区间Number: 双精度型浮点数Shader: 着色器String: 字符串型Time: 日期型Special: 专门的Bar Graph: 条形统计图Boolean Toggle: 布尔值切换器Colour Swatch: 色卡Custom Preview: 预览自定义Gradient: 多色彩渐变Graph Mapper:Number Slider: 数字滑动条Panel: 数据显示面板Param Viewer: 参数结构查看器Receiver: 数据接收器Logic 逻辑Boolean: 布尔运算Gate And: 并集Gate And Ternary: 三元并集Gate Majority:Gate Nand:Gate Nor:Gate Not:Gate Or:Gate Or Ternary:Gate Xnor:Gate Xor:List: 列表Dispatch: 分配(把一个列表中的项目分派到两个目标列表中)List Item: 清单项List Length: 列表长度(计算列表的长度)Null Item:空值(测试一个数据项是否无效)Reverse List: 反转列表Shift List: 移动列表Sort List: 分类列表Split List: 分拆列表Sub List: 次级列表(从一个列表中提取子集)Weave: 编排(使用自定义的式样编排输入流的设置)Script: 脚本DotNET C#Script: C#脚本DotNET VB Script: VB脚本F1 : 一元函数F2 : 二元函数F3 : 三元函数Variable Expression : 多元函数Sets: 集合Cull Nth : 选取元素(在列表中每n个选取元素)Cull Pattern : 选取图案(使用反复的掩码在列表中选取元素)Duplicate Date : 复制数据Fibonacci: 费班纳赛(创建一个费班纳赛序列)Jitter: 振动Random:Range: 范围Series: 数列Trees: 设计树Clean Tree: 清理设计树(把数据树中所有空项和无效数据清除掉)Create Branch: 创建分支(创建一个分支访问路径)Decompose Branch: 分解分支(分解分支访问路径)Flatten Tree: “夷平”设计树(把设计树中所有分支路径去除)Graft tree: 续接设计树Merge: 合并(把两个数据流合二为一)Merge Multiple: 合并多项(合并多个输入数据流为一个)Simplify Tree : 简化设计树(通过清除重复的可共享的分支简化设计树)Prune Tree: 修剪设计树(从设计树中去掉小的分支路径)Stream Filter: 数据流过滤器(过滤输入的数据流)Stream Gate: 数据流闸口(向一个指定的输出项重新传入数据流)Tree Branch: 设计树分支(从数据树中取回一个指定的分支)Tree Item: 设计树项目(从数据树中取回一个指定的项目)Scalar:标量Constants:常数:Epsilon: 艾普西龙(四舍五入双精度浮点数)Golden Ratio: 黄金分割比(1.618)Natural logarithm: 自然对数(2.718)Pi: 圆周率(3.14)Interval:区间:Bounds: 界限(围绕数字列表创建一个区间)Bounds 2D: 二维界限(围绕坐标列表创建一个二维的区间)Divide Interval: 均分区间Divide Interval2: 均分二维区间Interval: 区间Interval Components: 分解一维区间Interval2: 通过两个一维区间创建二维区间Interval2: 通过四个数字创建二维区间Interval2 Components: 分解一个二维区间到四个数字Interval2 Components: 分解一个二维区间到独立的一维区间Operators:运算符:Addition: 加法运算Division: 除法运算Equality: 等量代换Larger Than: 比较运算(大于)Modulus: 取模运算Multiplication: 乘法运算Power: 乘方运算Similarity: 近似运算Smaller Than: 比较运算(小于)Subtraction: 减法运算Polynomials:多项式:Factorial: 阶乘Log N: 求底数为N的对数Logarithm: 求10为底的对数Natural logarithm: 求以e为底的对数Power of 10: 10的乘方Power of 2: 2的乘方Power of E: E的乘方Trig:三角函数:ArcCosine: 反余弦函数ArcSine: 反正弦函数ArcTangent: 反正切函数Cosine: 余弦函数Sine: 正弦函数Tangent: 正切函数Util:公用:Mass Addition: 并集运算Maximum: 取最大值Mean: 取平均值Minimum: 取最小值Truncate:Vector:矢量:Colour: 色彩Add Colours : 颜色相加AHSV : 创建一个HSV色彩通道(浮点色彩)ARGB : 创建一个RGB色彩通道ARGB Fractional : 创建一个浮点RGB色彩通道Blend Colours : 混合色彩(在两个颜色中取插值)Create Shader : 创建OpenGL着色器Multiply Colours: 色彩倍增Split AHSV: 将颜色分解为HSV通道Split ARGB: 将颜色分解为RGB通道Subtract Colours: 减去颜色通道Constants: 常数:Unit X : 与X轴平行的矢量Unit Y : 与Y轴平行的矢量Unit Z : 与Z轴平行的矢量XY Plane : XY平面XZ Plane : XZ平面YZ Plane : YZ平面Plane:平面:Align Plane : 调整平面(执行最小的旋转调整平面到矢量指向)Align Planes :Plane : 在XY平面上创建一个平面Plane 3Pt : 过三点创建一个平面Plane Components: 把平面分解到其组成元素Plane Normal: 创建平面法线Rotate Plane : 绕Z轴旋转平面Point:点:Closest Point: 查找最近点Decompose : 把点分解到其组成元素Distance : 计算连个点坐标间的欧几里得距离Grid Hexagonal : 在每六个点之间生成六边形网格Grid Rectangular : 在点之间生成矩形网格Plane CP: 查找离平面最近的点Point Cylindrical: 在柱面坐标上创建点(角度,半径,标高)Point List: 点列表(显示坐标点的顺序列表)Point Oriented: 通过UVW坐标创建点Point Polar: 在球面坐标上创建点Point XYZ: 通过XYZ坐标创建点Pull Point: 把点拉至几何体Text Tag: 在rhino视图中创建文字标签Text Tag 3D: 在Rhino视图中创建三维文字标签Vector:矢量:Amplitude : 振幅(设置矢量的振幅)Angle : 角度(计算两个矢量间的夹角)Cross Product : 矢量叉积Decompose: 把矢量分解到其组成元素Dot Product: 矢量点积(计算连个矢量的数量积)Multiply: 执行矢量和标量的乘法运算Reverse: 矢量反向Summation: 求矢量的和Unit Vector:Vector 2Pt: 在两点间创建矢量Vector Length: 计算矢量的振幅Vector XYZ: 通过XYZ创建矢量Curve:曲线:Analysis:分析:Center: 查找圆或圆弧的圆点和半径Closed: 测试一条曲线是闭合的还是周期性的Curvature: 曲率(在指定的部位上评估一条曲线的曲率)Curvature Graph: 曲率图表(绘制Rhino的曲率图表)Curve CP: 在曲线上查找离指定点最近的点Curve Frame: 曲线骨架(在指定的部位上得到曲率骨架)Discontinuity: 不连续(沿曲线找出所有不连续点)End Points: 提取曲线端点Evaluate Curve: 评估曲线(在指定的部位上评估曲线)Evaluate Length: 评估长度(根据长度上一个特定的因子评估曲线,长度因子可以由曲线单元和法线单元提供,可以通过改变N参数来切换这两种模式)Explode: 炸开(把曲线分解到其组成元素)Horizontal Frame: 水平框架(在曲线上一个特定部位获取一个水平基准的框架)Length: 计算曲线长度Perp Frame: 垂直框架(在曲线上一个特定部位获取一个垂直基准的框架)Planer: 测试曲线平面性Division:分割:Curve Frames: 生成一系列等距曲线骨架Divide Curve: 等长度分割曲线Divide Distance: 用预设距离的点分割曲线Divide Length: 用预设长度分割曲线Hortzontal Frames: 产生一系列等位等高的曲线骨架Perp Frames: 用一系列垂直方向的等位骨架分割曲线Shatter: 按分段数打碎曲线Primitive:基本曲线:Arc: 圆弧(由基准面、半径、角度区间决定)Arc 3Pt: 过指定三点的圆弧Arc SED: SED圆弧(由起点、终点、切线矢量决定)BiArc: Bi曲线(由端点和切线决定)Circle : 圆(由指定平面和半径决定)Circle 3Pt: 过三个定点的圆Circle CNR: CNR圆(由圆心、旋转轴、半径决定)Ellipse : 椭圆(由指定平面和两个焦点决定)Line : 两点确定的线段Line SDL : SDL线段(由起点、正切方向、长度决定)Polygon : 多边形Rectangle: 矩形Spline:样条曲线:Bezier Span: 贝塞尔曲线Curve: 控制点曲线Curve On Surface: 创建一个在指定曲面上的内插点曲线Interpolate: 内插点曲线Iso Curve: ISO曲线(从曲线上提取的uv曲线)Kinky Curve: 混合式曲线(贝赛尔角点控制曲线)Poly Arc: 复合弧线(由圆弧和线段拼接而成)Poly Line: 复合线(连接各点组成的折线段)Sub Curve: 子曲线(从一条基本曲线上获得)Util:公用:Fillet: 接触点圆角Fillet Distance: 断点圆角Flip: 翻转曲线Join Curves: 结合曲线Offset: 偏移曲线Project: 投射曲线到复合曲面上(BRep曲面集合,即Rhino中的多重曲面)Surface:曲面:Analysis:分析:Box Components: 立方体元素(把立方体分解到其组成元素)Box Corners: 提取立方体角点BRep Area: 计算BRep(边界表示)的面积BRep Components: 把BRep(边界表示)分解到其组成元素BRep CP: 在BRep(边界表示)上查找离指定点最近的点BRep Volune: 计算BRep(边界表示)的体积BRep Wireframe: 提取BRep(边界表示)物体的线框Dimensions : 尺寸Evaluate Box: 在UVW空间评估一个立方体Evaluate Surface: 在UV坐标系上评估局部曲面特性Osc Circles: 圆上接触点(在指定的UV坐标系上计算出圆周上和曲面的交点)Principal Curvature: 助率(在指定的UV坐标系上计算出曲面的主曲率)Surface CP : 在曲面上查找离指定点最近的点Surface Curvature: 表面曲率在(指定的UV坐标系上计算出曲面的曲率)Trim Inclusion : 测试被修剪部分以内的UV点Freeform:自由曲面:4Point Surface: 由四点创建曲面Extrude: 沿矢量方向拉伸曲线或曲面Extrude Linear: 沿笔直路径拉伸曲线或曲面Extrude Point: 把曲面或曲线拉伸到指定点Loft: 沿界面曲线方向Offset: 定量偏移曲面Pipe: 沿轨道产生管状曲面Planar Srf: 从一系列边界曲线生成平坦面Rail Revolution: 通过绕轨道旋转生成曲面Revolution: 通过旋转生成曲面Sum Surface: 通过两条边界线生成曲面Surface From Point: 通过网格点生成nurbs曲面Sweep1 : 单轨扫描曲面Sweep2 : 双轨扫描曲面file:///C:\Users\JONES\AppData\Local\Temp\ksohtml\wpsB925.tmp.pngPrimitive:基本曲面:Bounding Box: 边界立方体(边界范围由需要被包含的集合体决定)Box 2Pt: 空间上两点决定的立方体Box Plane: 创建与一个矩形所在平面相匹配的立方体Center Box: 在平面的中心点创建立方体Cone: 圆锥体Cylinder: 圆柱体Interval Box: 由基准面和边长创建一个立方体Plane Srf: 平面Sphere: 球体Util:公用:Brep Join: 结合Brep(复合曲面)Cap Holes: 封闭所有Brep形(复合曲面)的平面开口Copy Trim: 复制修剪数据(将UV修剪数据从一个曲面复制到另一个)Divide Surface: 产生UV网格点分割曲面Flip: 翻转曲面法线Isotrim: 等参修剪(在曲面上提取由等参线分割的子集)Retrim: 再修剪(基于其它曲面的三维修剪数据)Surface Frames: 曲面框架(在曲面表面生成UV框架网格)Untrim: 撤销修剪(移除曲面上的所有切割线)Mesh:网格面:Primitive:基本网格面:Mesh: 网格面Mesh Box: 网格面立方体Mesh Plane: 网格平面Mesh Quad: 四边形网格Mesh Sphere: 网格球体Mesh Triangle: 三角面网格Triangulation:三角细分关系:Mesh BRep: 创建一个与现有BRep几何体相似的网格面Mesh Surface: 网格表面Settings (Custom): 描绘自定义网格设置Settings (Quality): 描绘高质量光滑曲面设置Settings (Speed): 快速描绘不带抗锯齿的曲面设置Util:公用:Face Components: 分解一个单元网格面到其组成元素Mesh Components: 分解一个网格面到其组成元素Mesh Paint: 指派一个反复的色彩图案到网格面物体Intersect:交集:Boolean:布尔:Region Difference: 差集(适用于平面闭合曲线)Region Intersection: 交集(适用于平面闭合曲线)Region Union: 并集(适用于平面闭合曲线)Solid Difference: 实体差集(适用于BRep形)Solid Intersection: 实体交集(适用于BRep形)Solid Union: 实体并集(适用于BRep形)Mathematical:数学:BRep | Line: 处理复合曲面和线段的交集问题BRep | Plane: 处理复合曲面和平面的交集问题(计算剖面)Curve | Line: 处理曲线和线段的交集问题Curve | Plane: 处理曲线和平面的交集问题Line | Plane: 处理平面和线段的交集问题Plane | Plane: 处理平面和平面的交集问题(计算面面交线)Plane | Plane | Plane: 处理三个平面的交集问题Surface | Line: 处理曲面和线段的交集问题Physical:物理:BRep | BRep: 处理两个复合曲面的交集问题BRep | Curve: 处理复合曲面和曲线的交集问题Curve | Curve: 处理曲线和曲线的交集问题Surface | Curve: 处理曲面和曲线的交集问题Region:区域:Split with BRep: 用复合曲面分割曲线Split with BReps: 用多个符合曲面分割曲线Trim with BRep: 用复合曲面修剪曲线Trim with BReps: 用多个符合曲面修剪曲线Trim with Region: 用一个范围修剪曲线Trim with Regions: 用多个范围修剪曲线XForm:变换:file:///C:\Users\JONES\AppData\Local\Temp\ksohtml\wpsB986.tmp.png Affine:仿射:Orient Direction: 指定方向Project: 将物体映射到平面Scale: 缩放物体(所有方向均匀缩放)Scale NU: 非均匀缩放物体Shear : 扭曲(按矢量扭曲方向扭曲变换物体)Shear Angle: 角度扭曲(按倾斜角度扭曲物体)Euclidian:欧几里得:Mirror: 镜像Move: 移动Orient: 转向(将几何体从一个坐标系重映射到另一个坐标系)Rotate: 旋转(在平面内旋转物体)Rotate Axis: 绕轴旋转物体Morph:变形:Blend Box: 在两个平面间建立立方体Box Morph: 扭曲立方体Camera Obscura: 针孔照相机Mirror Curve: 以自由曲线为基准镜像Mirror Surface: 以自由曲面为基准镜像Surface Box: 在曲面块上创建扭曲立方体Surface Morph: 将几何体变形到曲面UVW坐标系Twisted Box: 利用角点创建扭曲立方体。

Non-Manifold Assembly

Non-Manifold Assembly

Non-Manifold AssemblyThe non-manifold assembly Tutorial explains step by step how to obtain matching surfaces between the bone and an implant. First we will register the femoral head prosthesis on the Femur. Secondly we will use the cutting tools of the simulation module to perform an ostectomy of the femoral head. In the Mimics re-mesher we will combine both the femur shaft and the implant to ensure perfectly coinciding nodes between them. The Simulation, FEA and STL+ module have to be licensed to be able to conclude this tutorial. In case you do not have the simulation module you can skip the Ostectomy of the femoral head and still perform the remeshing part of the tutorial.The topics that will be discussed in this tutorial are:z Opening the Projectz Calculating a 3Dz Registration of the implantz Ostectomy of the femoral headz Remeshing the femur and implantz Creating a volume meshz Exporting the remeshed 3D modelsOpening the projectIn the File menu, select Open (Ctrl+O). Browse to the directory where you have installed the extra Tutorial Files and double click the Femur.mcs file.Calculating a 3DThere is already a yellow mask available in this dataset that will be used to calculate a 3D object. Select the Yellow mask and click on the Calculate 3D icon in the Masks toolbar. In the Calculate 3D dialog select the High quality setting and click on Calculate.Import the STLIn the File menu select Import STL (or go to the STL tab in the Project Management and click on Load STL from the tabs’toolbar. in the toolbar of the STL tab). From the TutorialData folder load the Implant.stl.Point registrationThe Point registration will be used to bring the implant nearer to the Femur. Indicate a start points on the STL and their corresponding end point on a 3D model or in the 2D views. Mimics will then calculate the transformation matrix that should be applied to have the best fit between the start and end points and applies the transformation matrix on the selected STLs.In the Registration menu select the Point Registration. Click on Add point, add a start point on the top of the implant head and put the corresponding end point on the femur head. Place a second set of points on the end of the implant neck and in the middle of the Greater Trochanter top. Position the last set of points on the end of the prosthesis and place the corresponding end point in the middle of the femur shaft in the sagittal view.Reposition the implantThe position of the implant can be fine tuned using the reposition tools. In the STL tab select the implant and click on the move tool . In the move dialog select Move along inertia axis from the dropdown box.By grabbing one of the arrows you can move the implant in the direction of the selected arrow.The position of the implant can be verified in both, 2D and 3D views. To visualize the implant in 2D enable the contours by selecting the sunglasses in the contour column of the STL tab.To make the implant visible in the 3D view enable the transparency from the 3D toolbar . The transparency setting of each individual 3D object can be changed by toggling the transparency mode in the 3D and STL tab. Left click on the transparency setting to change to another level of transparencyOstectomy of the femoral headTo remove the femoral head we will use the polyplane cut from the Simulation module. From the Simulation menu select Cut->Polyplane cut. In the simulation dialog select the 3D model of the bone, Yellow.To perform the cut click once on the top of the femoral neck, turn the 3D and double click on the bottom. This will create a cutting plane as shown in the images below:The orientation of the cut can still be modified. Hover over the center of the red arrow, when the cursor changes into the reposition icon , hold the left mouse button. By moving the mouse you can change the orientation of the cutting plane.Hold the left mouse button to change the orientation of the cutting planeTo finalize the cut the cutting plane should go completely through the bone. Therefore the depth needs to be increased. In the cut with PolyPlane dialog click on properties. In the properties dialog change the depth to 50 mm.Click on OK, to finish the cut.The cut will create a new 3D model, PolyplanCut-Yellow. To split this model, go the Simulation menu and select Split. In the Split dialog select the PolyplaneCut-yellow 3D model and select largest part. In this way you will only preserve the shaft of the femur.Remesh of the femur and implantThe femur and the implant now have to be remeshed in 3-matic. To do this, go to the FEA menu and choose Remesh. This will bring up the following dialog:Select both the implant and the shaft of the femur and click on OK. The Mimics remesh will open showing three tabs, 3D view, inspection scene of the implant, inspection scene of the femur.We will first combine the femur shaft and the implant. The combined mesh will then be remeshed and split afterwards.Create non-manifold assemblyA non-manifold assembly is an object with more than one parts, like the implant placed inside a cut femur bone in this case. This object has a common interface surface, the femur-implant interface surface in our case. When creating such an object, it is desired that the common surface is identical for both the parts. For this purpose, we use the Create non-manifold assembly operation. This operation will combine both meshes into one mesh, and maintain node continuity at the interface.Go to the 3D view and select from the Remesh menu -> Create non-manifold assembly (or use the Create non-manifold assembly icon in the remeshing toolbar ).As Main entity select the femur shaft by left clicking on the femur. Now click on Intersecting entity and select the implant. Click on Apply to combine both meshesThe result of the Create non-manifold operation is shown below. On the left is the original part with implant placed inside the bone. On the right, the implant is merged with the bone, and the intersecting volume is removed from the Main entity. Further, the surface triangles are matched to obtain a continuous interface between the two parts.Filter Sharp triangles First we will remove the sharp triangles using the sharp triangle filter. To reduce the sharp triangles, go to Fix ->Filter Sharp Triangles . Left clickon the 3D model to select it and use following parameters Filter distance: 0.2, Threshold angle 15, Filter mode: Collapse.Before non-manifold creationAfter non-manifold creation Triangulated view, notice the nodecontinuity at the interfaceSmooth Femur ShaftBecause the 3D model of the femur will be used for FEA only, you can reduce the amount of detail of its outer surface by smoothing it. In the Fix tab select the Smooth icon . Left click on the shaft to select the surface and use following parameters Smooth factor: 0.7, Number of iterations: 6. Then click Apply.ReduceThe 3D model contains too many triangles for an FE Analysis. To reduce the amount of triangles, go to Fix toolbaràReduce. Left click on the 3D model to select it and use following parameters Method: normal, Flip threshold angle: 15, Geometrical error: 0.1, iterations 5, enable preserve surface contours.Auto remeshIn the next step we will optimize the triangle shape. In this tutorial we will use the Height/Base(N) shape measurement. Select the Height/Base (N) measure from the Shape measure dropdown box.In the histogram drag the upper slider to 0.4. here, you can analyse the bad quality triangles by checking the Color low quality triangle and Show checkboxes.To Auto-Remesh the 3D object, make sure that the shape parameter is selected as current measure. Go to Remesh ->Auto Remesh (or use the Auto-Remesh icon in the remeshing toolbar ) and use the following parameters: quality threshold: 0.4, geometric error: 0.2, 3 iterations, control triangle edge length OFF.Quality preserving triangle reductionIf you feel that your mesh still contains groups of small triangles, these can be removed by using the quality preserving reduce triangles operation. Go to Remesh à Quality preserve reduce triangles (or use the Quality preserving triangle reduction icon in the Remesh toolbar) and use the following parameters: Quality threshold 0.4, number of iterations 3, Max Geometry error 0.3 mm, Max edge length 5 mm.Note that the maximum geometrical error allowed has been increased to 0.3mm. This gives more freedom to the algorithm to modify the shape to obtain a mesh that best fits the quality criteria. However, the value is still very low compared to the smallest geometry of interest in our mesh.Now you have obtained a uniform mesh with the desired quality.Creating a volume meshNow that your surface mesh has an adequate quality, you can create your volumetric mesh. Click on the Create Volume Mesh icon in the Remesh tab. Select your entity by clicking on your non-manifold assembly. Select Init and Refine as Method and check Control edge length ON, specifying a value for Maximum edge length of 5. If you wish to analyze the output of the volume mesh, you can set the Analse mesh quality parameters. Example, set the shape measure to be Aspect ratio (A), and give a Shape quality threshold of 20. Click on Apply.To visualize your volume elements, go to the 3D View window and in the Active Scene Tab, right-click on Standard Section–Y and select Show.Check Clip ON and adjust the position of your section.Copy your mesh from 3-matic to Mimics.Exporting the Volume meshNow you can export the volume mesh from Mimics to a Patran neutral, Abaqus or ANSYS file. To do this go to the Export menu and choose the correct format to export the mesh. Select the FEA meshes and click Add. To export, click OK.。

三维模型面片链码表示方法

三维模型面片链码表示方法

第29卷第3期计算机辅助设计与图形学学报Vol. 29 No.3 2017年3月Journal of Computer-Aided Design & Computer Graphics Mar. 2017三维模型面片链码表示方法魏巍1,2,3), 刘勇奎2)*, 段晓东2,3), 郭晨1)1) (大连海事大学信息科学技术学院大连 116026)2) (大连民族大学计算机科学与工程学院大连 116600)3) (大连民族大学大连市民族文化数字技术重点实验室大连 116600)(ykliu@)摘要: 将三维模型的三角面片表示与基于体素的链码技术相结合, 提出一种基于体素的三维模型面片链码表示方法. 首先对三维模型进行基于体素空间的切分, 将获得的面片顶点归一化在体素顶点上, 构造基于体素三角面片的模型表示; 然后依据构造的体素三角面片间连接边与第3顶点的位置关系定义面片链码的数据结构; 再根据连接边的类型和方向计算层次三角面片法向量的大小和方向; 最后通过逐层遍历体素内归一化的三角面片, 获得三维模型的面片链码表示. 相应地, 给出了面片链码的解码方法. 文中比较了面片链码与其他三维模型压缩算法的压缩效率和时间开销, 计算了不同体素粒度切分的三维模型与被切分的原始模型之间以及与体素切分模型具有同级别面片数量的原始模型之间的误差, 结果表明, 该方法能够有效地表达三维模型.关键词:体素; 面片链码; 连接边; 三维模型中图法分类号:TP391Representation Method of 3D Model Mesh Chain CodeWei Wei 1,2,3), Liu Yongkui2)*, Duan Xiaodong2,3), and Guo Chen1)1) (Information Science and Technology College, Dalian Maritime University, Dalian116026)2) (School of Computer Science and Engineering, Dalian Minzu University, Dalian 116600)3) (Dalian Key Laboratory of Digital Technology for National Culture, Dalian Minzu University, Dalian116600)Abstract: A representation method of 3D model mesh chain code based on voxel is proposed combining tri-angle mesh representation of 3D model with voxel-based chain code. Firstly, the 3D model is reconstructed based on triangle mesh in the voxel by cutting the 3D model in the voxel space and normalizing the inter-section obtained to the voxel vertex. After that, the data structure of mesh chain code is defined according to the position relationship of the connection edge and the third vertex of the triangle mesh reconstructed based on the voxel. The size and direction of triangle mesh normal vector in one layer are calculated according to the type and direction of the connection edge. Finally, the mesh chain code representing 3D model is ob-tained by traversing triangle mesh normalized in the voxel layer by layer. Correspondingly, decoding method of mesh chain code is presented. The compression efficiency and time consumption are compared between the mesh chain code and other 3D model compression algorithms. T he errors between the 3D models cut by the different size voxel and the original model cut by the voxel, and the original models which are the same mesh number level with the models cut by the different voxel are calculated. The result indicates that the method proposed can represent 3D model efficiently.收稿日期: 2016-04-15; 修回日期: 2016-09-13. 基金项目: 国家自然科学基金(61672132, 61370146, 61374114, 51579024); 辽宁省教育厅科学研究项目(L2014546, L2014544); 辽宁省科技计划(2013405003); 中央高校基本科研业务费资助项目(DC201502030408, DC201501025).魏巍(1980—), 男, 博士, 副教授, 主要研究方向为计算机图形学等; 刘勇奎(1961—), 男, 博士, 教授, 论文通讯作者, 主要研究方向为计算机图形学等; 段晓东(1963—), 男, 博士, 教授, 博士生导师, 主要研究方向为智能计算等; 郭晨(1956—), 男, 博士, 教授, 博士生导师, 主要研究方向为虚拟现实等.538 计算机辅助设计与图形学学报第29卷Key words: voxel; mesh chain code; connection edge; 3D model随着计算机技术的发展, 数字化三维模型被广泛应用于CAD & CG、模型仿真、医用图像、数字遗产保护、虚拟现实、游戏娱乐以及计算机视觉等领域. 对三维模型表示方法的研究始终是热点问题. 虽然已有许多三维模型的表示方法[1-2], 但随着计算机图形显示硬件的快速发展和3D图形库的广泛普及, 采用三角面片描述三维模型已成为三维数据交换的实际标准[3]. 通常, 在不考虑模型颜色和纹理的情况下, 采用三角面片的方式来表示三维模型需要2类表: 点表和面表. 点表中存放着三角面片每一顶点三维坐标的浮点表示, 面表中存放了构成一个三角面片的整型顶点索引信息. 因此, 用三角面片表示三维模型的数据结构大小为点表的12字节与面表的12字节之和, 存储三维模型的实际空间与表示模型的三角面片个数密切相关.近年来, 研究人员尝试多种方法降低三维模型的存储大小, 如通过调整三角面片的数目, 或通过改变模型表达的拓扑结构, 或通过将三维模型转化为二维图像再进行压缩等方法. Schroeder等[4]通过调整模型的几何和拓扑结构来评估抽取三角面片的标准, 进而对抽取的部分再进行三角化, 达到减少三角面片个数的目的. Maglo等[5]对三维模型多次遍历层次细节, 通过顶点删除和局部网格重构对网格进行压缩. Marras等[6]从形状感知的角度去考察三维模型, 认为模型中存在某些网格区域, 它们的可视化感知程度要高于其他部分, 进而提出一种自适应的网格压缩算法: 对感知度较强的区域使用较大的空间表示, 对于感知度较弱的区域则压缩表示空间. 何丽君等[7]利用球面分割对三维模型进行表示, 对空间中一个顶点的3个坐标值使用一个浮点数和一个网络编号的差值来表示, 从而降低模型的存储空间. Peng等[8]提出一种可对任意拓扑结构的空间三角面片进行八叉树无损压缩编码的方法, 其效果要优于基于k d-树编码的方法[9]. Jovanova等[10]提出基于MPEG4的3DMC压缩算法, 采用拓扑手术技术对三维模型的几何信息、拓扑信息、属性信息等进行压缩编码. 拓扑手术技术是3DMC算法的核心, 将构造成三角网格的顶点数沿树的边对网格进行分割, 使其成为一个无内点的简单多边形; 通过树状展开, 可将遍历树的深度对应为一组二进制编码, 从而实现递归地遍历网格内的三角面片. Vasa等[11]提出对三维模型基于拓扑连接和顶点度的平行四边形预测算法(an extension of the parallelogram predictor, EPP), 并在Edgebreaker压缩算法中实现, 取得了较好的模型网格压缩效果. 赵向军等[12]对三维模型提出保形自适应重采样算法, 将三维模型转化为规则排列的二维几何图像, 并借鉴图像压缩技术对其进行压缩. 上述方法都有自身独特的数据量化定义, 均取得了较好的压缩效果.链码技术凭借其具有较好的表达区域边界的能力、占据较小的存储空间等优势, 在图像处理领域中被广泛应用[13-14]. 近年来, 研究人员使用链码技术对三维曲线或轮廓线进行表示, 以压缩三维模型的存储空间, 取得了较好的进展. 1974年, Freeman[15]用链码技术对三维数字曲线进行表示, 将笛卡儿坐标系中26个可能的线性链码方向量化在不同的体素中, 构建了基于体素面、边或体素顶点相邻的空间Freeman链码. Bribiesca[16]基于正交方向改变的0和1二进制链码来表示被离散为正交线段的三维曲线. Sánchez-Cruz等[17]在Freeman三维链码的基础上提出一种三维相对链码, 包括3个主要的向量: 一个参考向量, 一个支持向量和一个改变方向向量. 该链码利用26连通体素获得定向的简单路径, 对三维曲线骨架和高程地图进行了有效表示. Lemus等[18]提出一种仅考虑方向相对变化的链码, 共9个码值, 并提出基于哈密尔顿回路的表面邻接图来表示体素化的三维物体封闭表面的方法.空间链码技术的优势在于其链码具有平移、旋转不变性; 不足之处在于用这种链码表示的三维模型边界, 表面只有水平和垂直2种四边形面片组成, 不能很好地表示真实物体的表面, 且其表达三维模型的范围仅限于曲线或轮廓, 无法对复杂三维模型进行表示.本文将三维模型的面片表示与基于体素的链码技术相结合, 提出一种基于体素的三维模型面片链码表示方法. 该方法对三维模型进行空间体素划分, 将三维模型表面重构在体素内, 获得基于体素的三角面片表示. 对体素内不同的三角面片提出了一种面片链码数据结构, 按层依次遍历体素三角面片获得三维模型的面片链码表示. 该方法可以有效地调控三维模型的存储空间及模型表示的精细程度.第3期魏巍, 等: 三维模型面片链码表示方法 5391 面片链码的方法描述1.1面片链码的基本原理传统三维模型是由三角面片进行渲染的. 这种模型渲染方法给出的三角面片大小不一, 通常在精细刻画模型细节的地方采用的是小面片表示, 而对于模型表面变化较为平缓的地方采用大面片表示. 这种模型表示方式虽然可以较准确地表达模型细节, 但由于三角面片缺少规律性, 模型压缩比较困难, 不利于三维模型的实时传输和显示.本文提出的三维模型面片链码表示方法, 对三维模型所在空间用平行于坐标平面的平面进行均匀切分, 由切分平面构成的小立方体称为体素(单位长度为1的体素称为单位体素), 切分后的模型由体素内的小三角面片表示. 相对于组成原始模型表面的三角面片, 体素内小三角面片的顶点位于体素8个顶点中任意3个, 即基于体素的模型表面最多可由38C=56种小三角面片组成, 这类三角面片的数量和位置是固定的. 所以, 可以对基于体素的模型表面三角面片逐层遍历编码, 获得模型的面片链码. 解码时, 可逐层对面片链码分析, 获取三角面片的真实顶点坐标, 进行模型渲染. 1.2面片链码的数据结构1.2.1 连接边标志定义被平行于坐标轴的平面均匀切分后的模型表面可以由基于体素的三角面片表示. 在遍历这类面片的过程中, 从一个三角面片过渡到另一个三角面片时存在一条公共边, 定义这条公共边为2个三角面片的连接边. 对于每个三角面片, 可由一条连接边和一个顶点(第3点)表示, 如图1所示.图1 连接边标志图图1中, 模型表面由f1~f4这4个三角面片构成. 设当前三角面片为f2, v1, v2和v3是其3个顶点, 前续三角面片为f1, 则v2v1为三角面片f1和f2的连接边. 若f1已知, 要表示f2, 除需确定f1和f2的连接边v2v1外, 还需获知顶点v3. 同理,f2的后继三角面片存在2种可能, 若以v2v3为连接边, v4为第3顶点, 后继三角面片为f3; 若以v3v1为连接边, v5为第3顶点, 后继三角面片为f4. 因此, 三角面片f2的后继连接边指明了后继三角面片f3或f4这2种前进的方向. 在面片链码的数据结构中, 设置1位对这种方向标志进行说明. 规定如下:设三角面片f i的3个顶点分别是v i-1, v i和v i+1,若v i-1v i是当前三角面片与前续三角面片f i-1的连接边(v i-1是起点), v i+1是第3顶点, 则对于f i的后继三角面片f i+1, 若连接边是由顶点v i-1和v i+1构成, 则设置f i+1的连接边标志为1, 若连接边是由顶点v i 和v i+1构成, 则设置f i+1的连接边标志为0.当前三角面片的连接边标志是相对于其前续三角面片定义的, 即到底与前续三角面片的哪条边相连(前续三角面片自身的连接边除外). 由此, 可递归地获得所有三角面片的连接边标志.本例中, 设面片f1的前续连接边是v2v0, v1是f1的第3顶点, 则对于面片f2, 与f1的连接边v2v1即由f1的连接边起点v2和第3顶点v1构成, 则f2的连接边标志定义为1. 同理, 对于面片f3相对于f2的连接边是v2v3, v2是面片f2与f1的连接边起点, v3是f2的第3顶点, 因此f3的连接边标志定义为1. 对于面片f4, 其相对于f2的连接边标志定义为0.1.2.2 连接边类型的定义连接边给出了下一个三角面片的连接位置, 但无法明确地表示三角面片. 若要表示具体的三角面片, 还需当前三角面片第3顶点的位置信息. 如图1所示, 若要表示面片f3, 除获知连接边相对于f2标志为1, 还需确定第3顶点v4; 若是面片f4, 除获知连接边标志为0, 还需确定第3顶点v5. 由于三角面片是基于体素的, 因此当前三角面片与后继面片的连接边必定是当前三角面片第3顶点和其另外2个顶点所构成的连接边其中之一. 设当前面片第3顶点为v i-1, 原则上可作为后继面片连接边的顶点v i的位置有17种, 如图2所示.图2 第3顶点与后继三角面片连接边顶点的位置关系540 计算机辅助设计与图形学学报第29卷实际中, 由于当前三角面片的第3点v i-1将与体素内顶点v i-2构成连接边, 因此将约束后继三角面片第3顶点的位置. 如图3所示, 顶点v i-1和顶点v i-2构成的连接边将限定后继面片第3顶点的位置只能位于体素v i-2v1v3v5—v6v2v4v i-1上, 即后继三角面片第3顶点的位置最多有6种可能.图3 连接边与后继三角面片可用第3点位置关系进一步观察不难发现, 对于不同位置的顶点v i-2和顶点v i-1构成的连接边类型共有13种, 如图4所示.图4 13种连接边类型每种连接边类型对应的第3顶点位置的可能性不尽相同. 设有三角面片连接边e n(n=1,…,13)包含2个顶点v i-2(x, y, z)和v i-1, 则不同连接边类型对应的第3顶点v i的位置个数关系如表1所示. 不难发现, 每类连接边的位置关系是固定的, 即连接边具有方向性. 如果以向量方式表示连接边, 则本例中连接边为v i-2v i-1, 由v i-2指向v i-1.1.2.3 面片链码数据结构定义由表1可知, 不同连接边对应第3顶点的位置个数最多16个, 最少6个. 对三角面片第3顶点可能存在的位置进行编码, 最多可用4位, 最少可用3位. 为了便于计算, 采用4位对第3顶点位置编码. 附录A中, 以连接边e1类型为例, 给出了其与第3顶点的位置关系和对应的面片链码数据结构编码值. 由此, 给出三角面片链码数据结构的定义.表1连接边与三角面片第3顶点位置个数对应关系连接边类型顶点v i-1坐标连接边第3顶点v i位置数e1(x+1, y, z) (x+1, y, z)- (x, y, z)16e2(x, y+1, z)(x, y+1, z)-(x, y, z)16e3(x, y, z+1)(x, y, z+1)- (x, y, z)16e4(x+1, y+1, z)(x, y+1, z+1)- (x, y, z)10e5(x+1, y-1, z)(x+1, y-1, z)- (x, y, z)10e6(x, y+1, z+1)(x, y+1, z+1)- (x, y, z)10e7(x, y+1, z-1) (x, y+1, z-1)- (x, y, z)10e8(x+1, y, z+1)(x+1, y, z+1)- (x, y, z)10e9(x+1, y, z-1) (x+1, y, z-1)- (x, y, z)10e10(x+1, y-1, z+1)(x+1, y-1, z+1)- (x, y, z) 6 e11(x+1, y+1, z+1)(x+1, y+1, z+1)- (x, y, z) 6 e12(x-1, y+1, z+1)(x-1, y+1, z+1)- (x, y, z) 6 e13(x+1, y+1, z-1)(x+1, y+1, z-1)- (x, y, z) 6 定义1. 1个三角面片链码由5位表达, 分别是1位三角面片连接边标志和4位第3顶点位置编码, 如图5所示.图5 面片链码的数据结构1.3面片链码的编码与解码用面片链码对基于体素的三角面片编码时, 先将初始的三角面片设定已知, 其后续三角面片用面片链码表示. 链码中的连接边标志指明了后继三角面片将与当前三角面片的哪条连接边相邻, 面片编码给出了后继三角面片第3顶点相对于当前类型的连接边的具体位置.面片链码的解码本质上是编码的逆过程. 面片链码所占据的位数固定(均为5位), 因此只需按固定长度位读取便可获得每一面片链码的码值. 进一步, 由于链码首面片是已知的, 因此通过读取第1个连接边标志可获得已知三角面片与当前三角面片的连接边, 进而可以判别连接边的类型, 从而判断链码码值中面片编码对应的第3点位置, 获得当前三角面片的具体位置. 后续三角面片链码的解码过程以此类推.2 面片链码表示三维模型为验证本文方法有效性, 我们对三维模型Santa,第3期魏巍, 等: 三维模型面片链码表示方法 541Panther, Bunny和Happy Buddha进行体素切分, 将原始模型三角面片与体素层之间的交点逐一归并到体素的顶点上, 并按提出的面片链码表示法逐层遍历新三角面片, 获得模型的层次面片链码. 由于存储新三角面片的数据结构所占位数固定, 所以该方法中模型存储空间依赖于体素切分的大小. 体素越小, 模型需要表达的体素越多, 在数据结构固定的情况下存储空间越大. 不难发现, 这种方法在归并新三角面片于体素中的位置时存在一定的误差. 因此, 若体素划分过大, 虽然模型存储空间会急剧降低, 误差也会增大; 体素划分过小, 模型存储空间会变大, 模型表达会更加精细.2.1基于体素的三维模型建模如图6所示, 对原始模型Santa分别按x轴、y 轴和z轴以单位体素(1体素)大小进行切分.图6 基于体素的模型切分由于原始模型的三角面片大小不一, 因此某一轴向的切割将会对原始三角面片产生不确定的影响, 如图7所示.图7 原始三角面片与体素切分效果图7给出了体素切分模型表面三角面片时出现不同交点的情况. 显然, 出现3交点的情况对模型归一化到体素顶点是较为有利的, 如图7b所示. 对于该情况, 只需将出现的3个交点逐一归并到距离当前体素顶点最近的顶点即可, 如图8所示.图8 三角面片与体素交点的归一化在实际的切分中出现图7b的情况是较少的, 这为归一化体素三角面片带来很大困难, 产生这些切割情况的原因是由于模型三角面片点坐标值的非整数性因素造成的. 为避免在构建基于体素的三角面片模型过程中出现上述不可控的点, 在切分模型之前需对模型进行一定的预处理, 即对模型三角面片顶点坐标取整. 整数化后的顶点坐标在进行三方向体素切分时, 可保证每一个三角面片的顶点与体素的顶点是统一的, 这可以有效地避免图7c~7e所示的情况. 对于4交点的情况, 可以拆分成2个三角面片进行处理, 如图9所示.图9 4交点面片的归一化采用上述基于体素的模型切分和顶点归一化方法, 可以获得体素模型表面某一层次的表示, 如图10所示. 可以看出, 单层模型表面是由归一化在不同体素顶点上的三角面片构成的, 这为三维模型的面片链码表示奠定了基础.图10 基于体素的模型表面单层表示2.2基于体素的面片链码法向量计算2.2.1 面片链码法向量计算方法法向量信息对于渲染模型真实感是至关重要的.542 计算机辅助设计与图形学学报第29卷传统模型法向量的计算除了需要明确三角面片各自点坐标信息外, 还需要逐一计算法向量的大小和方向. 在信息存储时, 法向量作为独立的信息进行保存. 本文提出的面片链码法向量的计算方式和存储形式均非常简便.原始模型三角面片被逐层切分并被归一化到各体素顶点上; 面片链码的法向量是逐层计算的, 对某一层中三角面片的法向量方向可分为指向模型表面外和指向模型表面内. 由于面片链码是通过连接边进行相连的, 而连接边又具有明确的方向性, 因此对于面片链码中任意三角面片, 其三点的位置关系是明确的. 对位于同一层的三角面片, 只要明确其中任一个三角面片法向量的正确方向, 则可反推其方向求解的方法, 进而推广至同层其他三角面片法向量方向的判定, 如图11所示.图11 同层面片链码法向量判定示意假设面片f1, f2和f3是被归一化到同层体素顶点的3个面片. 令f1是第1个三角面片, 边v0v1是其相对于前续三角面片的连接边, v2是当前三角面的第3顶点, 且其法向量方向确定, 指向模型表面外. 由于在定义连接边时已经明确该类型连接边的指向由v0指向v1, 对面片f1而言, 其正确法向量方向的计算是v0v1×v0v2. 对于面片f2, 其相对于f1的连接边是v2v1, 第3顶点是v3. 连接边v2v1的方向在定义该类连接边时已经确定, 为v2指向v1, 因此f2法向量是v2v1×v2v3. 同理, f3的法向量是v2v3×v2v4. 可以看出, 面片链码法向量的计算可以表示为v i-1v i×v i-1v i+1, 其中, v i-1v i表示连接边, v i-1v i+1表示以连接边起始顶点和当前三角面第3顶点构成的向量.对于同层三角面片, 由于其法向量方向计算方法相同, 因此只需知道任意一面片的法向量方向即可. 本例中, 前提假设了面片f1的法向量指向模型表面外, 如果指向模型表面内, 则依据上述表达式计算的方向将会与假设方向反向.在使用面片链码对模型进行编码时, 对于每一层面片数据, 设置1位表示当前层模型法向量与已知的面片法向量是否同是指向模型外表面, 如是, 设置为1, 否则为0.对于假设的模型面片法向量, 可以通过模型切分时继承原面片法向量的方向获得, 如图12所示, 三角面v1v2v3的法向量'N可由三角面片ABC 的法向量N继承获得.图12 面片法向量的继承求解法向量算法步骤如下:输入. 单层三角面片数据.输出. 当前面片层法向量方向标志位.Step1. 随机寻找当前层中一个三角面片顶点数据, 依次读取顶点信息v i-1, v i和v i+1.Step2. 将v i-1和v i作为当前三角面与其前续三角面片的连接边, 其中v i-1为连接边起点, v i为终点.Step3. 判断v i-1v i是否符合规定的连接边类型要求, 若不符合要求, 则表明当前标志符号v i-1不可作为连接边起点. 调换v i-1与v i标志符号的顺序, 使v i-1始终保持表示连接边正确的起点.Step4. 获得当前三角面片从原始模型继承的法向量H.Step5. 计算当前三角面的法向量H'.Step6. 计算H与H'的夹角θ, 若0°≤θ<90°, 则设置当前层面片法向量方向标志位为1; 若90°≤θ≤180°, 设置标记位为0.面片链码在编码过程中, 无需存储每一个三角面片的法向量信息, 只需按层记录层次法向量方向的标志. 解码过程中, 根据层次法向量标志逐步求解每个三角面片的法向量信息.2.2.2 面片链码法向量误差分析面片链码法向量的计算和表示方法虽然较为方便, 但由于面片链码中三角面片类型有限, 导致对应的法向量方向有限. 在对连续变化的模型表面表示过程中, 面片链码的法向量与原始模型的法向量之间不可避免地存在一定的误差. 为了降低第3期魏巍, 等: 三维模型面片链码表示方法 543这种误差对模型造成的影响, 一方面, 可以通过减小体素大小的方法, 使体素切分的三角面片足够小, 从而在表示模型表面连续变化时体素三角面片法向量的改变较为平缓; 另一方面, 可以通过继承原始模型三角面片的法向量来替代体素切分三角面片自身法向量的方法. 图13分别给出了模型Armadillo的原始模型表达, 体素切分为5万三角面片继承原始模型法向量表达, 体素切分为5万三角面片自带法向量表达, 以及体素切分为20万三角面片自带法向量表达.由图13可以看出, 相较于图13a带法向量的原始模型, 图13b比图13c表达真实感更强, 而当模型切分面片数量增大时, 图13d表达的真实感将更加逼真.2.3基于体素的面片链码模型渲染效果基于体素切分、顶点归一化以及面片法向量计算等方法, 对Santa, Panther, Bunny和Happy Buddha 等模型表面的三角网格进行重构, 原始模型和重构后的效果如图14~17所示.从图14~17可以看出, 体素切分1万三角面片模型表达相对粗糙, 体素切分5万三角面片模型表达更加接近原始模型. 这表明, 随着体素尺寸的减小, 模型整体密度变大, 模型外观越接近原始模型. 相应地, 表达单位体素内三角面片的存储大小为固定值, 随着面片数量的增加, 模型的存储大小将变大.2.4面片链码表示三维模型在对模型进行体素划分后, 原始模型内的三角面片被归一化为体素内三角面片, 应用面片链码对归一化后的三维模型进行表示. 由于模型是基于体素分层的, 因此只要给定各层次中任意一个三角面片的三点坐标, 便可根据与其相邻三角面片的连接边类型和第3顶点位于体素中的位置进行编码; 后续面片以此类推, 可以实现整层三角面片链码. 根据第1节, 每一面片链码的数据结构表示仅需占据5位, 因此通过面片链码表示三维模型a. 带法向量原始模型b. 切分5万面继承法向量模型c. 切分5万面带法向量模型d. 切分20万面带法向量模型图13 带法向量Armadillo模型表达a. 原始模型b. 体素切分1万面c. 体素切分2万面d. 体素切分3万面e. 体素切分4万面f. 体素切分5万面图14 Santa模型不同体素大小切分效果a. 原始模型b. 体素切分1万面c. 体素切分2万面d. 体素切分3万面e. 体素切分4万面f. 体素切分5万面图15 Panther模型不同体素大小切分效果。

④Fast triangle reordering for vertex locality and reduced overdraw

④Fast triangle reordering for vertex locality and reduced overdraw

ACM Reference FormatSander, P ., Nehab, D., Barczak, J. 2007. Fast T riangle Reordering for Vertex Locality and Reduced Overdraw.ACM Trans. Graph. 26, 3, Article 89 (July 2007), 9 pages. DOI = 10.1145/1239451.1239540 http://doi.acm.org/10.1145/1239451.1239540.Copyright NoticePermission to make digital or hard copies of part or all of this work for personal or classroom use is grantedwithout fee provided that copies are not made or distributed for profi t or direct commercial advantageand that copies show this notice on the fi rst page or initial screen of a display along with the full citation.Copyrights for components of this work owned by others than ACM must be honored. Abstracting withcredit is permitted. T o copy otherwise, to republish, to post on servers, to redistribute to lists, or to use anycomponent of this work in other works requires prior specifi c permission and/or a fee. Permissions may berequested from Publications Dept., ACM, Inc., 2 Penn Plaza, Suite 701, New Y ork, NY 10121-0701, fax +1(212) 869-0481, or permissions@.© 2007 ACM 0730-0301/2007/03-ART89 $5.00 DOI 10.1145/1239451.1239540/10.1145/1239451.1239540Fast Triangle Reordering for Vertex Locality and Reduced OverdrawPedro V .SanderDiego Nehab Joshua Barczak Hong Kong University of Science and Technology Princeton University 3D Application Research Group,AMD (a)Lin and Yu [2006]4.76sec,0.63ACMR (b)Hoppe [1999]226ms,0.65ACMR (c)Our work 51ms,0.69ACMR (d)Nehab et al.[2006]40sec,1.21MOVR,0.73ACMR (e)Our work 76ms,1.18MOVR,0.72ACMR Figure 1:Vertex cache efficiency and overdraw.Views of a 40k triangle Dragon model are shown,where red regions represent cache misses,and dark regions represent high overdraw rate.As a preprocessing stage,real-time rendering applications optimize the order triangles are issued to reduce the average post-transform vertex cache miss ratio (ACMR)(a-c).Recent algorithms also minimize the overdraw ratios (OVR)(d-e)with little cache degradation.We present novel algorithms that result in excellent vertex cache efficiency (c)as well as low overdraw (e).Our methods are significantly faster than previous approaches (compare timings),and are suitable for run-time execution.AbstractWe present novel algorithms that optimize the order in which trian-gles are rendered,to improve post-transform vertex cache efficiencyas well as for view-independent overdraw reduction.The resultingtriangle orders perform on par with previous methods,but are or-ders magnitude faster to compute.The improvements in processing speed allow us to perform theoptimization right after a model is loaded,when more informationon the host hardware is available.This allows our vertex cache opti-mization to often outperform other methods.In fact,our algorithmscan even be executed interactively,allowing for re-optimization incase of changes to geometry or topology,which happen often inCAD/CAM applications.We believe that most real-time renderingapplications will immediately benefit from these new results.1IntroductionModern rendering pipelines accept input in a variety of formats,butthe most widely used representation for geometry is based on vertexand index buffers .A vertex buffer provides the 3D coordinates andattributes for a set of vertices.The index buffer defines a set oftriangles,each given by the triad of indices of its vertices in thevertex buffer.As each triangle is processed for rendering,referenced verticesare processed by a vertex shader in an operation that can be com-putationally expensive.The cost comes from a combination of thebandwidth required to load the data associated to each vertex (i.e.,position,normal,color,texture coordinates,etc),and the instruc-tions required to process them (i.e.,transform and lighting).Ap-plications whose rendering cost is dominated by this bottleneck are said to be vertex-bound .Another potential bottleneck exists during rasterization.Each generated pixel is processed by a pixel shader ,which might per-form expensive operations in the process of computing the final pixel color.Once again,the cost comes from bandwidth associ-ated to texture lookups and from the ALU instructions executed by the GPU.When this cost dominates the total rendering cost,ap-plications are said to be pixel-bound (or fill-bound ).The growing complexity of per-pixel lighting effects has progressively increased concerns with this bottleneck.Naturally,modern GPUs employ a variety of optimizations that attempt to avoid unnecessary computations and memory references.Two such optimizations are the post-transform vertex cache ,used during vertex processing,and early Z-culling ,used during pixel processing.Interestingly,the effectiveness of both optimizations is highly dependent on the order on which triangles are issued.Given the new unified shader architectures,reducing vertex and pixel load at run-time is beneficial for both vertex-and pixel-bound applica-tions.It is therefore desirable to generate a triangle order that is suitable for both optimizations.The post-transform vertex cache holds a small number of trans-formed vertices in a FIFO queue.When a triangle references a vertex found in the cache,results are reused directly,without any external data transfers or further processing required.The average cache miss ratio (ACMR)can be greatly reduced if triangles are ordered to increase vertex reference locality.The ACMR in turn has a strong impact on the frame rate of vertex-bound applications (see figure 2a).Many algorithms have therefore been proposed to generate low-ACMR triangle orders (section 2).Early Z-culling is an optimization by which the GPU tests the depth of each pixel against the Z-buffer before executing its pixel shader.If the depth is such that the results would be discarded,no additional work is performed.This optimization is most effective when there is little overdraw .Overdraw can be defined as the ra-tio between the total number of pixels passing the depth test and the number of visible pixels (a ratio of 1means no overdraw).The graph in figure 2b illustrates the dependency between overdraw ra-tios and rendering times,in a pixel-bound scenario.ACM Transactions on Graphics, Vol. 26, No. 3, Article 89, Publication date: July 2007.0 0.2 0.4 0.6 0.8 1 1.2 0 0.2 0.4 0.6 0.8 1 1.2R e n d e r i n g t i m era t i o ACMR ratio 0.6 0.70.8 0.9 1 1.10.6 0.7 0.8 0.9 1 1.1R e n d e r i n g t i m e ra t i o OVR ratioFigure 2:ACMR and overdraw impact on rendering times.(a)In a com-pletely vertex-bound scenario,the dependency between ACMR and render-ing time is almost linear.(b)The same is true of overdraw ratios and render-ing times,when pixel shading is the bottleneck (although our measurementswere more noisy).The task of determining a static triangle order that produces lowoverdraw without harming the vertex cache locality has been thetopic of recent research [Nehab et al.2006].The basic insight is topartition each model into triangle clusters,or contiguous patches.Since clusters contain many triangles,preserving vertex localitywithin clusters is enough to guarantee a low overall ACMR.Theseclusters can then be atomically sorted according to a metric thatminimizes overdraw.Surprisingly,it is possible to design view-independent metrics that result in a static cluster order that greatlyminimizes overdraw.The facts that vertex cache performance isnot harmed,and that nothing else must be changed in a renderingpipeline,make the idea very attractive.In this paper,we present novel,extremely efficient algorithmsfor post-transform vertex cache optimization (section 3),for split-ting meshes into triangle clusters that do not significantly worsenthe ACMR (section 4),and for sorting these clusters into a viewindependent order that reduces overdraw (section 5).The main fea-tures are the following:•Our methods are orders of magnitude faster than previous pro-posals,and thus can be executed interactively;•As far as quality is concerned,our methods perform on par withprevious methods;•In order to simplify integration with existing applications,ourmethods operate directly on vertex and index buffers;•Therefore,unlike many previous methods,our algorithms oper-ate transparently on non-manifold models;•They are also substantially simpler to implement than most pre-vious methods.In several application domains,such as games and CAD/CAMapplications,models frequently undergo changes in geometry andtopology.It is desirable to re-optimize such models,and in thatcase the efficiency of the optimization process is very important.Our work allows these systems to bring the optimization stage torun-time.At run-time,the exact post-transform vertex cache sizemight be available,and we can therefore target the correct value.Alternatively,when used as a pre-processing stage,our algorithmscan greatly reduce processing time.For these reasons,we believethat many real-time rendering applications,vertex-or pixel-bound,will immediately benefit from our results.2Previous workVertex cache optimization The first practical approaches totackle the vertex bandwidth problem were based on trianglestrips [Akeley et al.1990;Evans et al.1996;Speckmann andSnoeyink 1997;Xiang et al.1999].Even early GPUs supportedstrips natively (with a 2-entry cache),so these methods resulted inACMR values close to 1,as long as the mesh could be encoded withrelatively few strips.Substantial effort was therefore dedicated tothe NP-complete problem of finding single-strip representations for meshes [Garey et al.1976;Dillencourt 1996;Arkin et al.1996;Es-tkowski et al.2002].In order to reduce bandwidth even further,Deering [1995]pro-posed a geometry compression scheme based on generalized trian-gle meshes .What set Deering’s work apart from other approaches to geometry compression [Taubin and Rossignac 1998;Gumhold and Straßer 1998;Touma and Gotsman 1998]was that the decom-pression stage was designed to be easily implemented on hard-ware [Deering and Nelson 1993].Generalized triangle meshes explicitly manage a fixed size cache,with instructions to replace cached vertices or to reference them to define triangles.Chow [1997]later provided algorithms to encode triangle meshes into this representation,achieving near optimal results (ACMR 0.6–0.7).Bar-Yehuda and Gotsman [1996]proved that for a cache size of k ,the optimal ACMR was bound by 0.5+Ω(1/k ),whereas to ensure each vertex in a n -vertex mesh is processed only once,a cache size of O (√(a)K-Cache-Reorder Lin and Yu[2006](b)D3DXMeshbased on[Hoppe1999](c)OpenCCLYoon and Lindstrom[2006](d)dfsrendseqBogomjakov et al.[2001](e)Our workFigure3:Triangle ordering paths.Thefigures show the patterns generated by a variety of different triangle order optimization algorithms.Adjacent triangles are connected by a blue line,so that the paths are visible.The structure in the triangle orders allows us to generate satisfactory clusters by simply breaking the optimized sequence into smaller,contiguous subsequences of triangles.able estimate of the cache size,other methods perform much better (including our own)[Hoppe1999;Lin and Yu2006].Nevertheless,the vertex cache size does vary with the hardware, and could potentially depend on the amount of information being passed from the vertex shader to the pixel shader(seefigure10). In order to perform the optimization during a pre-process stage, Lin and Yu[2006],and Hoppe[1999]must therefore underestimate this value.The efficiency of our method allows us to bring the optimization to run-time,and this gives our method an edge over previous alternatives.Finally,we can also re-optimize models to reflect changes,and this makes our method especially useful for CAD/CAM applications.Overdraw reduction A common approach to overdraw reduc-tion exploits early Z-culling with two rendering passes.On thefirst pass,using no pixel shader,the geometry is rendered to prime the Z-buffer.On the second pass,pixel shading is enabled,and the scene is rendered again,except this time the depth test is changed to less then or equal.Since only visible pixel will pass that test, the expensive shading computations will only be executed on them. For pixel intensive applications,it might be well worth it to render geometry twice in order to reduce the pixel load.However,when geometry is also complex,this solution is not acceptable.In such cases,visibility sorting and occlusion culling tech-niques[Airey1990;Teller and Sèquin1991;Greene et al.1993] are recommended.In order to determine visibility,modern meth-ods[Hillesland et al.2002;Bittner et al.2004;Govindaraju et al. 2005]use hardware-based occlusion queries,and some can take advantage of predicated rendering[Blythe2006].Although these methods can reduce overdraw,they traditionally operate at coarse levels,grouping primitives together.Our overdraw reduction strat-egy could therefore be used tofind an appropriate order in which to render the primitives in each group that passes the occlusion test.Interestingly,in the presence of early Z-culling,the amount of overdraw is determined by the order on which the primitives are traversed.When predicated rendering is used,a group can only be culled if none of its pixels passes the depth test.In that case,al-though rendering the primitives would certainly be wasteful,the ac-tion would not incur any additional overdraw.Furthermore,due to the use of proxy geometry in occlusion queries,the Z-buffer band-width would not change significantly either.As far as ordering is concerned,the best strategy is to draw tri-angles in front-to-back order.The most direct way to achieve this is to use view-dependent sorting.Although there are efficient ap-proaches to visibility sorting[Govindaraju et al.2005],it would be convenient tofind a view-independent order that reduces overdraw without requiring any changes to the application.This is the problem addressed by Nehab et al.[2006].To produce such an ordering,they cluster the mesh into planar patches,and sort the resulting patches by approximating a solution to the minimum feedback arc set problem on the partial order graph that represents pairwise cluster occlusions.Each patch can later be independently optimized for vertex cache efficiency,using any method of choice. Since the patches include a considerable number of triangles,the technique does not harm vertex bound applications.This method was also designed to operate off-line,and little con-sideration was given to running times.In fact,the clustering and partial order graph generation stages can each take in the order of minutes to complete.Our new method follows a different strat-egy.We design a metric that is extremely efficient to evaluate.This allows us to use a much larger number of clusters,which in turn causes their shape to be less relevant.We can therefore design a fast clustering method.In order to prevent these smaller clusters from harming the vertex cache,we generate them during the vertex cache optimization itself,taking into account the state of the cache. 3Post-transform vertex cache optimization Vertex and index buffers provide no explicit adjacency information. Worst of all,models so defined can contain multiple disconnected components and even represent non-manifold meshes.Triangle ad-jacency information(the dual graph),generally required by strip-based methods,can be awkward to maintain for non-manifolds.We are looking for an algorithm that runs to completion in a time budget comparable to that of generating this information.We therefore re-strict ourselves to considering only vertex-triangle adjacency.This information is efficiently captured by an offset map into an array that lists the triangles for each vertex.Basic idea Given this vertex adjacency,we could directly out-put the triangle lists for each vertex(issuing each triangle only once,of course).Intuitively,the operation clusters triangles around common vertices,much like triangle fans.However,triangles are ordered randomly within each fan(seefigure4a).Interestingly, within a small neighborhood,the relative order on which the tri-angles are generated does not matter,as long as the post-transform vertex cache is large enough to hold the entire neighborhood(i.e., 7vertices in regular meshes).We therefore do not have to sort the triangles before issuing them.This gives us the freedom to explore triangle orders that are locally random or,in other words,tipsy.When considering variants of this idea,it is hard to predict the expected cache hit ratio,especially in non-uniform models.Nev-ertheless,we can gain valuable insight by analyzing the algorithm under certain simplifying assumptions,which we call steady state. For that,assume a large cache size,and an infinite,regular tessella-tion.For the example infigure4a,it is easy to see that the steady state ACMR is7/6.Naturally,in real models,thefinal ACMR will be worse.This is due to the fact that triangle fans will start collid-ing,and at some point we will be forced to reference n+1vertices, while issuing only n triangles,for n<6.Fortunately,we can do much better than n+1Fanning vertex sequence While a vertex is being fanned,each issued triangle references other vertices.These form a subset of the 1-ring of the fanning vertex.For efficiency reasons,we select the next fanning vertex from among this subset,which we call the1-ring candidates.Among them,we consider those that would still be in the cache,even after being fanned themselves.If there are multiple options,we pick the candidate that entered the cache the earliest.Otherwise,we arbitrarily pick thefirst1-ring candidate.When the algorithm reaches a point where all1-ring candidates have already been fanned(i.e.,a dead-end),we select the most re-cently referenced vertex that still has non-issued triangles.In many cases,this vertex is still in the cache.Therefore,this choice is bet-ter than picking an arbitrary vertex based on the input order alone, which we do only as a last resort.The linear time algorithm The complete pseudo-code for the al-gorithm is presented below,followed by a discussion.Tipsify(I,k):OA=Build-Adjacency(I)Vertex-triangle adjacencyL=Get-Triangle-Counts(A)Per-vertex live triangle counts C=Zero(Vertex-Count(I))Per-vertex caching time stamps D=Empty-Stack()Dead-end vertex stackE=False(Triangle-Count(I))Per triangle emittedflagO=Empty-Index-Buffer()Empty output bufferf=0Arbitrary starting vertexs=k+1,i=1Time stamp and cursorwhile f>=0For all valid fanning verticesN=Empty-Set()1-ring of next candidatesforeach Triangle t in Neighbors(A,f)if!Emitted(E,t)for each Vertex v in tAppend(O,v)Output vertexPush(D,v)Add to dead-end stackInsert(N,v)Register as candidateL[v]=L[v]-1Decrease live triangle countif s-C[v]>k If not in cacheC[v]=s Set time stamps=s+1Increment time stampE[t]=true Flag triangle as emitted Select next fanning vertexf=Get-Next-Vertex(I,i,k,N,C,s,L,D)return OGet-Next-Vertex(I,i,k,N,C,s,L,D)n=-1,p=-1Best candidate and priorityforeach Vertex v in Nif L[v]>0Must have live trianglesp=0Initial priorityif s-C[v]+2*L[v]<=k In cache even after fanning?p=s-C[v]Priority is position in cache if p>m Keep best candidatem=pn=vif n==-1Reached a dead-end?n=Skip-Dead-End(L,D,I,i)Get non-local vertexreturn nSkip-Dead-End(L,D,I,i)while!Empty(D)Next in dead-end stackd=Pop(D)if L[d]>0Check for live trianglesreturn dwhile i<Vertex-Count(I)Next in input orderi=i+1Cursor sweeps list only onceif L[i]>0Check for live trianglesreturn ireturn-1We are done!The function Tipsify()receives an index buffer as input,and outputs an optimized index buffer containing the same triangles, reordered according to the algorithm weoutlined.(a)Tipsy fans(b)TipsifyFigure4:Tipsification.The red line shows the order on which the triangles are issued.The blue line shows the fanning vertex sequence.(a)Randomly choosing the fanning vertices yields7/6ACMR.(b)With the zig zag pattern of period2n,we reach the nearly optimal steady state of n+2a fanning vertex,we simply take the next vertex with live triangles, in input order.Amortized run-time analysis Unlike most previous approaches, our method runs in time that is linear on the input size.The running time does not depend on the target cache size k.This is clear from the fact that k only appears in constant-time expressions.For the run-time analysis,it is easier to initially exclude the cost of Get-Next-Vertex().In that case,the main loop in Tipsify() runs in time O(t),where t is the number of input triangles.Each vertex is fanned at most once,and each fanning operation only vis-its the vertex’s neighboring triangles.Therefore,each triangle is visited at most three times(one for each of its vertices).Further-more,for each visited triangle,all operations are constant-time.As for Get-Next-Vertex(),notice that along its entire life-time,the dead-end stack D receives only3t indices.This is be-cause each triangle is emitted only once,and each triangle pushes only its three vertex indices on D.Therefore,thefirst loop in Get-Next-Vertex()can only be executed3t times.Next,con-sider the second loop.Index i gets incremented,but it is never decremented.Therefore,this loop also can only be executed3t times,and this completes the proof.Steady state analysis Interestingly,after an initial spiraling pat-tern,our method converges to a zig zag pattern,as shown infig-ure4b.Intuitively,this zig zag occurs because the fanning sequence tries to follow the previous strip of vertices,since they are still in the cache(remember the algorithm encourages fanning vertices that have entered the cache earlier).Eventually,it reaches a point where the adjacent vertices from the preceding strip are not on the cache. The sequence is then forced to turn around again in order to fan a recently processed vertex that is still in the cache.Counting the number of issued triangles versus the number of newly transformed vertices at each cycle,we reach the steady state performance of n+2(a)occlusion potential integral(b)fastapproximation(c)fast approximation on clusters(d)Nehab et al.[2006]Figure6:View independent triangle orders.Bright regions should bedrawnfirst.(a)The occlusion potential integral(equation2).(b-c)Thefast approximation of equation4,at the triangle level(b)and at the clusterlevel(c).Notice how the approximation respects the relative order dictatedby the integral.(d)Unsurprisingly,Nehab et al.[2006]produces a similarorder,although at a much coarser level.greater than log t,the complexity is sub-linear on the number of tri-angles.In practice,this is always the case.For instance,even witha tiny average cluster size of20(which would definitely harm thevertex cache performance),it would take a model with t>20·220triangles before n log n>t.5View-independent cluster sortingTo minimize overdraw in a view-independent way,we should startby drawing surface points that are more likely to occlude other sur-face points,from any viewpoint.This likelihood is captured by theocclusion potential integral O(p,M)of an oriented point p,relativeto model M.It is defined as the area of M that can be occluded bypoint p,and is given by the following equation:O(p,M)= q∈M R( p−q,n p )R( p−q,n q )2is the unit ramp function, , is the dot product,and n p and n q are the normals at points p and q,respectively.In order to understand the integral,considerthe diagram on the left.A point p can only oc-clude a point q if neither of them is back-faceculled when p is in front of q.In other words,p−q,n p and p−q,n q must both be posi-tive.In the diagram,points r,u,and v fail oneor both these tests,and therefore do not con-tribute to p’s occlusion potential.Point q passes both tests.In thatcase,the contribution reflects the foreshortening of both p and q,asseen by an orthographic camera.This is the role of the cosine termsarising from the dot products and normalized by the denominator.Ideally,we would like to sort individual surface points based ontheir occlusion potentials(points with higher potentials drawnfirst).However,to preserve the vertex cache,we must instead sort triangleclusters atomically.We therefore extend the definition of occlusionpotential to surface patches P,as follows:O(P,M)= p∈P O(p,M)d p(3)Unfortunately,computing the occlusion potential integraltakes O(t2)time,where t is the number of triangles in the mesh.Instead,we resort to an O(t)approximation that can be efficientlycalculated.Intuitively,points with high occlusion potential will beon the outskirts of a model,and will be pointing away from it.We therefore define the approximate occlusion potential of a sur-face patch P with regard to model M,asO′(P,M)=(C(P)−C(M))·N(P)(4)where C is the centroid function,and N(P)represents the averagenormal of patch P.In general,the value of the approximate occlusion potential willnot be close to the value of the integral.In fact,the approxima-tion can produce negative values.Nevertheless,the relative orderof the values produced tend to be very similar.Figure6a shows theBunny model,on which each vertex has been shaded according toequation2.The vertices were sorted,and then colored from blackto white in decreasing order of occlusion potential.Figure6b wasinstead ordered and shaded according to equation4(at the trianglelevel).Notice the dark regions between the ears,and also abovethe tail,paws,and thighs.These regions do not occlude any partof the model,regardless of viewpoint,and are therefore drawn last.Conversely,the top of the head cannot be occluded,and is there-fore drawnfirst.The same approximation can be performed at thecluster level.Figures6c shows the results of sorting the fast linearclusters described in the previous section.The clusters are so smallthat results are similar to the triangle level paring withfigure6d,we can see that the overall order followed by Nehab et al.[2006]is similar,although at a much coarser level.6ResultsRunning times Figure7(left)shows the running times,in log-arithmic scale,of Tipsify()and several other vertex cache op-timization methods.Tests were run on an Intel Pentium42GHzprocessor.The Dragon model was decimated into20uniformlyspaced resolutions ranging from40k to800k triangles.A varietyof algorithms(the original authors’implementations)were used tooptimize each model for vertex locality.Note that our method isconsiderably faster than all other methods,and runs approximately100x faster than K-Cache-Reorder,which produces the best trian-gle orders.The ratios would be even larger when optimizing forlarge cache sizes(the plot uses a cache size of12),since our run-ning time depends only on the number of triangles.Figure7(right)compares the running times(also in logarithmic scale)of our entiresystem with that of Nehab et al.[2006],which is the only previousmethod that optimizes for vertex cache and overdraw.In this case,our new approach is approximately1,000times faster.Due to the significant reduction in processing time,which al-lows us to optimize models at load time,we can take advantage ofthe actual host hardware post-transform vertex cache sizes and theamount of information stored per vertex to generate a triangle orderoptimized for these particular settings.Until this information is di-rectly available through official APIs,the best parameters for eachconfiguration can be tabulated and looked up at run-time.Vertex cache optimization To avoid cacheflushes,previousmethods must optimize for conservative cache sizes(K-Cache-Reorder,based on[Lin and Yu2006]and D3DXMesh,based on[Hoppe1999]),and yield suboptimal performance in systems with alarge cache size.The graphs infigure9show that K-Cache-Reorderyields the best ACMR results when optimizing for cache size12.However,if the run-time cache size increases above20-24,mod-els optimized at load time with Tipsify()can achieve even bet-ter ACMRs.In contrast,cache oblivious methods(dfsrenseq[Bo-gomjakov and Gotsman2002]and OpenCCL[Yoon and Lindstrom2006])only surpass K-Cache-Reorder at much larger cache sizes.To verify that improvements in ACMR translate into higherframe rates,we tested a vertex bound application on different hard-ware.We also varied vertex format configurations,since larger ver-tices(i.e.,with more attributes)consume more cache space,and canreduce the number of entries available.In each test,a model wasoptimized with K-Cache-Reorder,assuming cache sizes12(rec-89-6 • Sander et al.ACM Transactions on Graphics, Vol. 26, No. 3, Article 89, Publication date: July 2007.。

高效率的三角网格模型保特征简化方法

高效率的三角网格模型保特征简化方法

高效率的三角网格模型保特征简化方法段黎明;邵辉;李中明;张桂;杨尚朋【摘要】Considering that some triangular mesh models are inconvenient for storage,analysis and display due to enormous data volume,a simplification algorithm for triangular collapsed mesh combining with mesh refinement was put forward.In this method,the modified coordinates for three vertexes of the triangle to be collapsed were determined by using the √3 surface subdivision method,and the position of the folding point was preliminarily determined in accordance with the modified coordinates;then the Laplacian coordinate of the folding point and normal information of the original triangle were introduced to update the folding point position;finally,the collapse cost was caculated based on volume error of the area after triangle collapse and flatness of the collapsed triangle,thus enabled the mesh to preferentially carry out collapse simplification from relatively flat area with few feature points.Experimental test and data analysis were established in multiple models,and result indicates that the method can effectively simplify the mesh pared with three simplification methods of different types,the method can achieve the highest simplification efficiency,and can,at the sametime,effectively maintain geometric characteristics of the mesh model and control quality of the simplified triangle.%部分三角网格模型因数据量庞大而导致其不便于存储、分析和显示,本文提出了一种结合网格精细化方法的三角形折叠网格简化算法以解决此问题.首先通过/3网格细分法确定待折叠三角形三个顶点的修正坐标,并根据修正坐标初步确定折叠点位置,然后引入折叠点的拉普拉斯坐标和原三角形法向信息来更新折叠点位置,最后由三角形折叠后该区域的体积误差和被折叠三角形的平展度共同确定折叠代价,从而使网格优先从较为平坦和特征点较少的区域开始依次进行三角形折叠简化.对多个模型进行了实验测试和数据分析,结果表明该方法能够有效精简网格数据,与3个不同类型的简化方法相比,该方法的简化效率最高,而且能有效保持原网格模型的几何特征并控制简化三角形的质量.【期刊名称】《光学精密工程》【年(卷),期】2017(025)002【总页数】9页(P460-468)【关键词】网格简化;三角形折叠;拉普拉斯坐标;√3细分法【作者】段黎明;邵辉;李中明;张桂;杨尚朋【作者单位】重庆大学光电技术及系统教育部重点实验室ICT研究中心,重庆400044;重庆大学机械工程学院,重庆400044;重庆大学光电技术及系统教育部重点实验室ICT研究中心,重庆400044;重庆大学机械工程学院,重庆400044;重庆大学光电技术及系统教育部重点实验室ICT研究中心,重庆400044;重庆大学机械工程学院,重庆400044;重庆大学光电技术及系统教育部重点实验室ICT研究中心,重庆400044;重庆大学机械工程学院,重庆400044;重庆大学光电技术及系统教育部重点实验室ICT研究中心,重庆400044;重庆大学机械工程学院,重庆400044【正文语种】中文【中图分类】TH703三角网格模型在快速成型、3D打印、模型仿真等领域的应用十分广泛[1,2],但其数据量往往十分庞大,这虽然可以很好地保持物体的细节特征,却不便于数据的计算、展示、存储和传输。

基于Unity3d的mesh切割及优化

基于Unity3d的mesh切割及优化

Software Application •软件应用Electronic Technology & Software Engineering 电子技术与软件工程• 63【关键词】Unity3d mesh 切割 图形学1 问题分析在VR 项目中,玩家需要用模拟的刀将飞过来的三维模型切开,被切到的模型应精确的沿切面分成两个模型,并且生成的模型碎片也要允许切割。

由于每次挥刀的角度、方向和切割次数都是不确定的,所以无法用固定的几个动画来达到准确的切割效果。

经过考虑,最终将问题的解决方向定在了模型的mesh 切割上。

对于模型的mesh 切割,首先确定以下两个前提:(1)被切割的模型面数较低。

(2)被切割物体为凸多面体。

为了将问题简化,我们可以先假设这样一个需求:空间中有一个立方体,目的是要以任意一个角度将模型分为两半。

2 解决方案在Unity 创建的cube 中,如果被切割源从中间分为两半后,在切面处将会产生新的顶点和三角面,问题的关键就在于如何确定新生成的顶点和三角面、如何补全剖面以及如何优化。

2.1 确定切割源即立方体在什么位置以什么角度被切开,这里我们可以把切割源想成一个平面,将立方体分为两半。

这里采用平面的点法式来确定这一平面,即需要获取平面上一点和平面的法向量。

2.2 顶点分组将一个立方体分为两半,先要把立方体是的顶点分为两组,分组依据是顶点是否在切割源的同一侧。

利用切割源点到各个顶点的向量与切割源的法向量的点乘的正负性来判断,将结果存入一个bool 类型的数组中,数组名为above ,供后面使用。

2.3 构建三角形索引数组与创建剖面点以mesh 三角形索引的顺序依次访问3个基于Unity3d 的mesh 切割及优化文/刘柯壮 贺体刚在使用Unity3d 开发VR 游戏的过程中,要实现运行中对三维模型的实时切割,在此基础上还要实现多次切割三维模型碎片。

本文提供了一种模型切割的方法,并对“剖面填充”部分算法进行了优化。

三角网格模型骨架提取算法

三角网格模型骨架提取算法

随着计算机图形学的发展,对三维模型的研究日益深入,骨架作为形状表示的一种有效形式,在三维模型的各个研究领域被运用。

骨架的狭义定义最初由Blum [1]提出,当时他称骨架为“中轴”(Medial Axis )[2]。

骨架的经典定义有两种[3]:一种是烧草模型,如图1所示,从模型表面开始点火,火焰从物体边界上的两点同时向内部推进,轨迹随时间形成等距的同心圆,同心圆的相遇点所构成的集合即为骨架;另外一种是更直观的定义,即最大圆盘模型。

如图2所示,骨架点是所有最大圆盘的圆心集合,最大圆盘即是完全包含在物体内部且至少与物体边界相切于两点的圆。

骨架上的每一个点都是这些内切圆的圆心,这些圆沿着骨架分布正好填充物体的内部。

由于模型的骨架很好地保留了模型的拓扑形收稿日期:2019-05-14作者简介:王洪申(1969—),男,甘肃兰州人,博士,教授,研究方向:CAD/CAM 。

†通讯联系人,E-mail :*****************三角网格模型骨架提取算法王洪申,张家振†,张小鹏(兰州理工大学机电工程学院,甘肃兰州730000)摘要:骨架图能够直观表达三维模型几何形状,很好地反映模型的拓扑特征,在工业机器人抓取、特征识别等领域有着广泛的应用。

针对三角网格表达的工业零件给出一种骨架提取算法,该算法采用Reeb 图对三角网格进行骨架的抽取运算。

首先读取三角网格文件,并对复杂的三角网格进行简化处理,然后遍历所有的三角网格,采用Dijkstra 算法抽取基本点集,根据定义的连续函数计算每个顶点的函数值,最后根据函数值得出模型的基本骨架。

实验表明,该算法具有良好的计算效果和效率,提取出的骨架图较好地保存了三维模型拓扑结构和姿态,可作为后续研究三维模型搜索的特征描述符。

关键词:骨架图;三角网格;三维模型;拓扑结构;Reeb 图中图分类号:G633.6文献标识码:ATriangular Mesh Model Skeleton Extraction AlgorithmWANG Hong-shen ,ZHANG Jia-zhen †,ZHANG Xiao-peng(School of Mechanical and Electrical Engineering ,Lanzhou University of Technology ,Lanzhou ,Gansu 730000,China )Abstract :The skeleton diagram can visually express the geometry of the 3D model and reflect the topological features of themodel well.It has a wide range of applications in the fields of industrial robot capture and feature recognition.A skeleton extraction al -gorithm is proposed for the industrial parts expressed by the triangle mesh.The algorithm uses the Reeb diagram to extract the skeleton from the triangular mesh.First read the triangle mesh file ,and simplify the complex triangle mesh ,then traverse all the triangle mesh -es ,extract the basic point set by Dijkstra algorithm ,calculate the function value of each vertex according to the defined continuous function ,and finally The function deserves the basic skeleton of the model.Experiments show that the proposed algorithm has goodcomputational efficiency and efficiency.The extracted skeleton map preserves the topology and pose of the 3D model ,and can be usedas a feature descriptor for the subsequent research of 3D model search.Key words :skeleton diagram ;triangular mesh ;3D model ;topology ;Reeb diagram第39卷第2期2020年6月计算技术与自动化Computing Technology and AutomationVol.39,No.2Jun.2020文章编号:1003—6199(2020)02—0145—05DOI :10.16339/ki.jsjsyzdh.202002029态及其连接特性,所以经常被用于模型渲染、模型表面重建、碰撞检测、模型检索等应用中,在工业零件的视觉识别领域也有广泛的用途。

三角形网格下对流扩散方程的无震荡格式

三角形网格下对流扩散方程的无震荡格式

关键词
对流扩散方程,三角形网格,无震荡格式
*
通讯作者。
文章引用: 赵娟, 高巍. 三角形网格下对流扩散方程的无震荡格式[J]. 流体动力学, 2018, 6(2): 23-32. DOI: 10.12677/ijfd.2018.62004
赵娟,高巍
Copyright © 2018 by authors and Hans Publishers Inc. This work is licensed under the Creative Commons Attribution International License (CC BY). /licenses/by/4.0/
2. 非结构网格下格式的构造
2.1. 非一致网格下的 NVSF 的正则化
在结构网格下,数值格式在对对流项离散时,一般会用到该界面相邻的三个节点。而在非一致网格 下界面 f 的值不仅与相邻的节点的值有关,也与这些节点所在的位置有关。在非一致网格下,我们选取 的节点为界面 f 的相邻的三个节点。如图 1 所示,U,C,D 分别为 f 的上游,中心和下游节点,分别位 于 xU , xC , xD 处。这三个节点上的值为 φU , φC , φD ,界面 f 的值为 φ f ,位于 x f 处。在非一致网格下,
Figure 2. The relationship between variables before the regularization 图 2. 正则化前的变量关系
Figure 3. The relationship between variables after the regularization 图 3. 正则化后的变量关系
Open Access
1. 引言

CATIA有限元分析

CATIA有限元分析

1D Property 1维特性
User Material 自定义材料
Mapping Property 绘图特性
2021/10/10
7
2021/10/10
Octree Tetrahedron Mesher 八叉树四面体网格 Octree Triangle Mesher 八叉树三角形网格 Beam Mesher 梁网格 Element Type 元素类型 Local Mesh Size 局部网格大小 Local Mesh Sag局部网格凹陷 2D Property 2维特性 Imported Composite Property 引进复合结构
Surface welding Connection Properties 表面焊接连接属性
Nodes to Nodes Connection Properties
节点到节点的连接属性
Node Interface Properties 节点接口属性
16
Restraints 约束工具栏
Clamp 固定
Rigid Connection Properties 刚性连接属性 Smooth Connection Properties光滑连接属性
Virtual Bolt Tightening Connection Properties
虚拟螺栓紧固连接属性 Virtual Spring Bolt Tightening Connection Properties
位移
Principal Stress 主应力
Precision 精度
2021/10/10
5
Analysis Result 结果分析工具栏
Generate Report 生成报告

Petrel2014构造恢复解释(下)

Petrel2014构造恢复解释(下)

Petrel构造恢复解释(下)前文已经介绍了使用Petrel进行构造恢复解释的基本步骤,下面继续介绍其参数设置和调整方法。

一,构造恢复模型如前文所述,当创建了构造恢复模型之后,Petrel工区的Models面板下会出现一个‘Reconstruction models’目录,所有的构造恢复模型都将存放在该目录内。

1,目录结构:将某个构造恢复模型目录展开,里边有三个子目录‘Horizons’,’Faults’, ‘Attributes’。

图1,构造恢复模型目录结构三个目录分别存放构造模型中包含的层位、断层,以及构造恢复计算的属性。

其中的构造恢复属性可以在解释窗口中显示。

如图1所示,每一项之前的选择框(正方形框)都是激活的。

图2,叠合显示Triangle mesh三角网格属性二,构造恢复属性构造恢复属性是在构造恢复过程中计算出来的中间成果,是用户对构造恢复结果进行分析质控的重要辅助数据。

1,Triangle mesh:三角网格属性。

显示对地震剖面进行离散化所使用的三角网格的情况。

用户可以直观地看到地震剖面是如何被离散剖分的。

结合层位和断层,以及地震剖面信号特征来查看剖分是否合适。

假如出现畸变,用户就可以知道畸变部位是如何被离散化计算处理的。

2,Zones:地质层段属性。

构造恢复过程中,会基于构造恢复模型中断层和层位的位置,以及层位类型,根据三角网格设置计算断层-断层,以及断层-层位之间的交切关系,定义出地质层段。

图2,显示zones属性每个Zone的颜色与该Zone顶面Horizon的颜色一致。

即双击Horizons目录里的层位,修改其颜色,则对应zone的颜色会改变。

图3,调节Zone属性显示的透明度双击Zones属性,在其Settings界面的Display面板里可以调节显示的不透明度(Opacity)。

注意是不透明度,所以数值越小越透明,数值越大越不透明。

如图3所示是Opacity=20%和Opacity=63%的效果。

包袋常用英文专业术语

包袋常用英文专业术语

包袋英文术语第一部分Backpack 背包Pouch(wallet) 钱包Traveling bags 旅行包Briefcase 公文包Tote bag 大手提袋Lady bag 女士包Waist bag 腰包Pencil case 笔袋Shoulder bags 肩包Front panel 前片Flap of pocket 袋盖Printing artwork 印刷图Compartment 隔层Back panel 后片Foam 发泡Sponge 海棉Inner pocket 里袋Bottom 底部Bottom board 底板Trolley 拉杆Handle 手把Hook buckle 钩扣Buckle 扣具Zipper 拉链Zip puller 拉头Webbing 织带Straps 肩带Woven label 织唛Piping 胶骨Binding 捆边/包边Hangtag 挂牌Barcode sticker 条形码不干胶Polybag 塑料袋Reinforce panel 补强片Rivet 柳钉Net pocket 网袋Bottle 水瓶Logo 商标Rubber 橡胶Match color 配色Ribbon 尼龙丝带Embroidery 刺绣Yarn 线Mark 唛头Inner label 内标Carton 纸箱Packing 包装Pantone 色卡Velcro 摩术贴Rope 绳子Stud 角钉Elastic 松紧带Padded 填料Cardboard 纸板程度词:Thin 薄Thick 厚Interior/outer 内/外部Adjustable 可调节的材料:420D ripstop 420D格子布600D polyester 600D涤沦Nylon 尼龙Microfiber 花瑶布Transparent PVC 透明PVC Semitransparent PVC 磨沙PVC 70D sponge 70D发泡Mesh/net 网布420D crinkle nylon 420D水洗布PE board PE板Swatch 样品Cardboard 纸板Jean 牛仔布Fabric 布料Plastic 塑料Taslon 塔丝龙Tapestry 窗帘提花布Ripstop 格子布Yarn or stitch line 线或车线其他/杂项:Screen print/Silkscreen/Heat transfer 丝印Dyeing 染色Printing house/factory 印刷厂Embrodery(Logo) 刺绣Punch 冲孔Decorative 装饰的Embossing 压纹第二部分Leather 真皮Fabric 布类Straw 革类Hardware 五金类Zipper 拉链头Dog leash 狗钩Buckle 方扣类Rivet 撞钉H-bar 圈扣Rings 钮扣类Snaps 饰片类五金颜色类:Black nickel (B) 黑镍色Chrome (CR) 铬色Brass plated 青铜色B.N brush 黑镍(刷面) Nickel brush 镍色(刷面)Antique brush 青古制面Pearl nickel 珍珠镍Pearl golden 珍珠金Antique 青古铜色Pure golden 纯金Matt silver 粉雾色Matt nickel 水雾色Nickel 镍色Matt pearl paint 烤雾黑Finishing 五金表面处理Plating 电镀/喷镀Eleetro painting 电着涂装(E/P)Black nickel plating 黑镍(B-N/P)Anti silver plating 黑古银(ANT-S)Satin gold plating 沙电金(SG/P)Gold plating 正金(G/P)Nickel plating 镍(N/P)Chromium plating 铬(CR/P)Satin nickel plating 沙电(SN/P)Nickel free plating 无铅电镀(NF/P)Gun metal plating 枪管色(GM/P) Brass gold 铜金色Black enamel 黑漆Tin plating 铝银(T/P)Brass plating 青铜(B/P)Silver plating 纯银(S/P)Print 印色(P/A)Antique brass plating 青古铜(ANT-B)O.E.B plating 黄古铜(O.E.C)Dark copper plating 红古铜(DCP/P)Zinc plating 白锌(Z/P) Copper plating 红铜(CP/P)第三部分钩扣类:Snap hook US 钩Swivel hook 如意钩Swivel snaphook 旋转钩Uviv snaphook 旋转US钩Key-ring 锁匙圈Cord hook 绳钩Small hook 小钩Round 圈骨SR buckle 插扣类Side release BK 旁开扣Dual SR/Dual contourde SR 双调旁开扣Side release BK 重型插扣Plated SR 电镀插扣Release SR 反光插扣Contoured SR 弯型插扣Center SR/push 即开扣Lock SR 数码锁Turn lock 转锁Cam buckle 合扣Belt buckle 束衣扣Sliele&straplock 日型梯扣类Slide 日型环Small slide 八字环Slide+belt+loop 日型环+束带圈Slide+loop 日型环+耳Ladder lock 梯扣Contour ladder lock 弯形梯扣Heavy ladder lock 强力梯扣Loop 长方圈Belt loop 束带圈Sewable loop 可缝长方圈D-ring D型环Triangle 三角环Six ring 六角环O-ring O型环Sewable D-ring 可缝D型环Chate tab 塑片加圈常用名称:Term about handbagfront pocket 前附袋Outside body front 前幅Outside body back 后幅Outside bottom front 前附袋底Logo patch 饰片Embroidery 刺纋片Accessories 附属的配件Slash pocket 开口袋Binding 包边Lash 鞭梢Dome 圆顶层Stitching 车线Shoulder pad 肩片Single enttry 单开口Sling 吊袋Triple compartment 间隔Top stitching 面车线Bottom 底部Division 分部Handle webbing 织带手挽Under neath 盖底里Gusset 侧围Lining 里布Adjustable 可调节式的Seams 缝合线Metal zippers with pullers 金属拉链Metal slider with pull 金属拉头Delrin zippers with pulllers 塑钢拉链Delrin slider with pull 塑钢拉头Nylon zippers with pulllers 尼龙拉链Nylon slider with pull 尼龙拉头Zip tap 拉链布Puller with connecter 拉链Strap 带,皮带Test sample 测试样Production sample 大货生产样Construction sample 结构样Salesman sample 销售样Approval sample 确认样Sample room 样版房Cutting section 开料部Packing section 包装部Skiving section 产皮车间String 绳类pp web pp 织带UPC 电脑条码Emboss 凹纹Twist handle 变形手挽Metal ornament 金属饰片Hand fell 手感Press button 按扣Piping 管条Ornament 饰片Velcro 么术贴Brooch 别针Bradde chain 珠链Double rivet 撞钉Shell 框架Snap 厌扣Pack PE foam 发泡棉Handle webbing 织带手挽Woven lable 布标Stopper 束扣Screen printing 丝印面料(Fabric):reflector 反光料Pong plush 乳马纹毛毛料Ripstop 格子布Linen 亚麻料Twill 斜纹理布Microfiber 超细纤维料Plush 绒毛料Nylon taffeta 尼龙印花布Quilted panel 棉格料Satin 沙丁料Logan 宇富料Iridescent 珠光料Leopard skin point 天然豹纹Holegram 万彩/雷射料Darkdenim 深色牛仔料Ragon 人造丝Heoprene 一种合成像胶Jute 黄麻纤维Split leather 贴合皮Laminate 贴胶料Nylon mesh 尼龙网布Jacquard 提花布Raw robber 生胶Reflectorvinyl 反光维伦料Velvet/velours 天鹅绒Swanskin 天鹅皮颜色(Color):Dark 深色Beige 米黄色Fuscous 暗褐色Fuschia 桃红色Brown 棕色Burgandy 梅红色Navy 深蓝色Recst 褐色Khaki 卡其色/土黄色Eggplant 茄紫色Mint 薄荷色Purple 紫色Slate 板色Ltaupe 浅褐色Charcoal 深灰色Bone 骨色Turquois 青绿色Mallard 绿色Forest 深絿色gray/grey 灰色的Teal 蓝绿色的Color swatch 色卡Pantone 国际色卡Olive green 橄榄绿Coral 粉红色产品名(production name):Sport bag 运动包Satchel 小背包Hand bag 手袋Backpack 背包Cosmetic bag 化妆包Tote 手提袋Slg 小包Waist pack 腰包Swagger bag 休闲包Natural tan 自然包Pouch 小袋Flight bag /Air travelling roller bag 航空旅行箱Garment bag 西装套Computer backpack 电脑背包Luggage upright 拉杆箱Travel kit 换洗袋/旅行工具袋Golfbag 高尔夫袋Pull rod for flight bag 航空旅行拉杆Travel suitcase 旅行箱Purse 女用包Note case 公文袋Soft attache case 手提箱其他项目:Others:pin snap 走珠钮Ticker 贴标Magnetic snap 磁扣Keyhook 匙圈String ring beltstay 织带拉环Cupula 吸盘Fastness-lock 固定手把扣Exhaust hole 排气孔Cothes lock/hanger 衣架Rhombic slotted lash tab 菱形饰片Rectangular slotted lash tab 长方形饰片Rhomibic slotted lash tab 正方形饰片Top cuft 头圈Base tray 底盘Honeycomb frame 蜂巢框Cart outside setting 外置式拉杆Cart inside setting 内置式拉杆Footstand 脚座Caster 角轮Trolley 拉杆Wheel set 轮组Square tube 方管2 stops 二段式3 stops 三段式Paper board 纸卡Hangtag /sling brand 吊卡Eyelet 鸡眼7-hook 七字钩Washer 套片Metal plate 铁板Zinc alloy 锌合金制品Half round handle 半圆手把Corner protection 护角Kettle 水壶Metal line 钢线,铁圈Zipper slider 拉饰片Combination padlock 密码锁End tabs 织带尾Solid color/Gradient color 单色/渐变色Panton色卡号 PMS# 123CCoated 上涂料的FOB:free on board 运费到付CIF:Cost, Interest, freight 运费寄付BOL:bill of lading 海运,空运提单Telex Release 电放布料英语名称:靛蓝青年布:Indigo chambray人棉布植绒:Rayon cloth flockingPVC植绒:PVC flocking针织布植绒:Knitting cloth flocking珠粒绒:Claimond veins倒毛:Down pile making平绒:Velveteen (velvet-plain)仿麂皮:Micro suede牛仔皮植绒:Jeans flocking尼丝纺:Nylon taffeta (Nylon shioze)尼龙塔夫泡泡纱:Nylon seersucker taffeta素面植绒:Plain flocking印花植绒:Flocking(flower)雕印植绒:Embossing flocking皮革沟底植绒:Leather imitation flocking牛仔植绒雕印:Embossing jeans flocking兔羊绒大衣呢:Angora cachmere overcoating双面呢:Double-faced woolen goods羊毛立绒呢:Cut velvet顺毛呢:Over coating粗花呢:Costume tweed弹力呢:Lycra woolen goods塔丝绒: Nylon taslon塔丝绒格子:N/Taslon ripstop桃皮绒:Polyester peach skin涤塔夫:Polyester taffeta春亚纺:Polyester pongee超细麦克布:Micro fiber锦棉稠(平纹):Nylon-cotton fabric (plain)重平锦棉稠:Nylon-cotton-cotton fabric (double weft)人字锦棉纺:Nylon-cotton fabric斜纹锦棉纺:Nylon-cotton fabric (twill)素色天鹅绒:Solid velvet抽条磨毛天鹅绒:Rib fleece velvet雪花天鹅绒:Melange velvet轧花天鹅绒:Ginning velvet粒粒绒布:Pellet fleece velvet麻棉混纺布:Linen/cotton blended fabric麻棉交织布:Linen/cotton mixed fabric素色毛巾布:Solid terry蚂蚁布:Fleece in one side素色卫衣布:Solid fleece鱼网布:Fleece彩条汗布:Color-stripes single jerseyT/R弹力布:T/R bengalineT/C色织格子布:T/C solid check fabric弹力仿麂皮:Micro suede with spandexT/R仿麂皮:T/R Micro suede仿麂皮瑶粒绒复合布:100%polyester micro suede bounding with polar fleece仿麂皮针织布复合:100% polyesterbounding with knitting micro suede fabric仿麂皮羊羔绒复合布:100% polyester micro suede bounding with lamb fur蜡光缎:Cire satine全消光尼丝纺:Full dull nylon taffeta半消光尼丝纺:Semi-dull nylon taffeta亮光尼龙:Trilobal nylon 全消光塔丝隆:Full dull nylon taslan全消光牛津布:Full dull nylon oxford尼龙格:Nylon rip-stop塔丝隆格:Taslan rip-stop哑富迪:Full dull Micro polyester pongee全消光春亚纺:Full dull polyester pongee春亚纺格子:Polyester pongee rip-stop全消光涤纶桃皮绒:Full dull polyester peach宽斜纹桃皮绒:Big twill polyester peach涤锦复合桃皮绒:Poly/nylon peach涤纶格子:Polyester taffeta rip-stop涤纶蜂巢塔丝隆:Polyester honey taslan全消光涤纶低弹牛津布:Full dull polytextured oxford涤锦交织桃皮绒:Nylon/polyesterinter-woven peach。

常用纺织专业词汇大全

常用纺织专业词汇大全

常用纺织专业词汇大全原料涤纶:ployester锦纶:nylon/polyamide醋酸:acetate棉cotton人棉:rayon人丝:viscose仿真丝:imitatedsilk fabric真丝:silk氨纶:spande某/elastic/strec/lycra长丝:filament短纤: spun黑丝:blackyarn阳离cation三角异形丝:triangle profile空气变形丝:air-jette某turing yarn超细纤维: micro –fibric全拉伸丝: fdyfull drawn yarn)预取向丝: poy(preorientedyarn)拉伸变形丝: dty(drawte某tured yarn)牵伸加捻丝: dt (drwwtwist)质量标准: qualitystandard(oeko-te某standard 100、iso9002、sgs、its、aatcc、m&s)客检: customerinspection台板检验:tableinspection经向检验: lampinspection色牢度: colorfastness氯漂白色牢度:chlorine bleach color fastness尺寸稳定性: dimensional stability外观持久性:appearance retention拉伸强度: tensile strength撕破强度: tear strength接缝滑裂: seam slippage抗起毛起球性: pilling resistance耐磨性: abrasion resistance拒水性: water repellency抗水性: water resistance织物密度: thread per inch/stich density 纱支: yarncount克重: weightwool 羊毛m mohair马海毛rh、 rabbithair 兔毛alalpaca 羊驼毛s silk 真丝j jute 黄麻l linen 亚麻ramramie 苎麻hem hempt polyester涤纶wscashmere 羊绒wa angora 安哥拉山羊毛la lambswool 羊羔毛ts tussah silk 柞蚕丝yh yarkhair 牦牛毛md modal莫代尔ch camelhair 驼绒cu cupro铜msmulberry silk 桑蚕丝ly lycra 莱卡kender kender 罗布麻silkool silkool 大豆蛋白纤维cvc cvc 涤棉倒比n nylon 锦纶r rayon 人棉v viscose 粘胶sp spende某氨纶pp polypropylene 丙纶pv polyvinyl 维纶a acrylic 腈纶tel tencel 天丝纱线纱线 yarns棉及其混纺纱线 cotton,cotton mi某ed & blended yarns 棉纱 cottonyarns涤棉纱 t/c& cvc yarns粘棉纱cotton/rayon yarns棉晴纱cotton/acrylic yarns棉/氨纶包芯纱 cotton/spande某yarns棉与其他混纺纱cotton/others blended yarns毛纺系列纱线 woollenyarn series羊绒纱cashmere yarn series全羊毛纱 wool(100%) yarns毛晴纱wool/acrylic yarns毛涤纱wool/polyester yarns毛粘纱wool/viscose yarns毛/丝纱wool/silkyarnss羊毛/其他wool/other yarns兔毛纱 angorayarns雪兰毛线shetland yarns牦牛毛纱 yakhair yarns羊仔毛纱lambswool yarns真丝系列纱线 silkyarn series白厂丝 whitesteam filature yarns双宫丝 duppionsilk yarns柞蚕丝 tussahsilk yarns绢丝 spunsilk yarns柞绢丝 tussahspun silk yarns柚丝 silknoil yarns真丝线 silkthreads丝棉混纺纱silk/cotton blended yarns麻纺系列纱线 halmyarn series某某某系列纱线 hempyarn series亚麻系列纱线 linenyarn series苎麻系列纱线 ramieyarn series黄麻系列纱线 juteyarn series其他植物纤维纱线 otherplant yarns剑麻系列纱线 sisalyarn series人造纤维和合成纱线 manmade& synthetic yarns 晴纶纱 acrylicyarns晴纶仿羊绒cashmere-like acrylic yarns仿兔毛 sundayangora yarns锦纶丝polyamide yarns涤纶纱/丝polyester yarns人造棉纱 spunrayon yarns天丝纱 tencelyarns弹力纱线elastane yarns涤粘纱 t/r(polyester/rayon) yarns人棉混纺纱 spunrayon blended yarns其他化纤纱线 othersynthetic yarns人造长丝或线 viscosefilament yarns or threads 花色纱线雪尼尔纱chenille yarns大肚纱big-belly yarns带子纱 tapeyarns马海毛纱 mohairyarns羽毛纱 featheryarns蜈蚣纱centipede like yarns项链纱neckline yarns辫子纱 pigtailyarns梯子纱 ladderyarns圈圈纱 loopyarnstt 纱 ttyarns结子纱 knotyarns乒乓纱ping-pong yarns其它花色纱线 otherfancy yarns金属纱线 metalyarns绳、索及缆 twine,cordage, rope & cables面料靛蓝青年布:indigochambray人棉布植绒:rayoncloth flockingpvc植绒:pvcflocking针织布植绒:knittingcloth flocking珠粒绒:claimondveins倒毛:downpile making平绒:velveteen(velvet-plain)仿麂皮:microsuede牛仔皮植绒:jeansflocking尼丝纺:nylontaffeta (nylon shioze)尼龙塔夫泡泡纱:nylonseersucker taffeta素面植绒:plainflocking印花植绒:flocking(flower)雕印植绒:embossingflocking皮革沟底植绒:leatherimitation flocking牛仔植绒雕印:embossingjeans flocking兔羊绒大衣呢:angoracachmere overcoating 羊毛双面呢:double-facedwoolen goods立绒呢:cutvelvet顺毛呢:overcoating粗花呢:costumetweed弹力呢:lycrawoolen goods塔丝绒: nylontaslon塔丝绒格子:n/taslonripstop桃皮绒:polyesterpeach skin涤塔夫:polyestertaffeta春亚纺:polyesterpongee超细麦克布:microfiber锦棉稠(平纹):nylon-cottonfabric (plain)重平锦棉稠:nylon-cotton-cottonfabric(double weft)人字锦棉纺:nylon-cottonfabric斜纹锦棉纺:nylon-cottonfabric (twill)素色天鹅绒:solidvelvet抽条磨毛天鹅绒:ribfleece velvet雪花天鹅绒:melangevelvet轧花天鹅绒:ginningvelvet粒粒绒布:pelletfleece velvet麻棉混纺布:linen/cottonblended fabric麻棉交织布:linen/cottonmi某ed fabric素色毛巾布:solidterry蚂蚁布:fleecein one side素色卫衣布:solidfleece鱼网布:fleece彩条汗布:color-stripessingle jerseyt/r弹力布:t/rbengalinet/c色织格子布:t/c yarndyed check fabric弹力仿麂皮:microsuede with spande某t/r仿麂皮:t/rmicro suede仿麂皮瑶粒绒复合布:100%polyestermicro suede bounding with polar fleece仿麂皮针织布复合:100%polyester bounding with knitting micro suede fabric仿麂皮羊羔绒复合布:100%polyester micro suede bounding with lamb fur蜡光缎:ciresatine全消光尼丝纺:fulldull nylon taffeta半消光尼丝纺:semi-dullnylon taffeta亮光尼龙:trilobalnylon全消光塔丝隆:fulldull nylon taslan全消光牛津布:fulldull nylon o某ford尼龙格:nylonrip-stop塔丝隆格:taslanrip-stop哑富迪:fulldull micro polyester pongee全消光春亚纺:fulldull polyester pongee春亚纺格子:polyesterpongee rip-stop全消光涤纶桃皮绒:fulldull polyester peach宽斜纹桃皮绒:bigtwill polyester peach涤锦复合桃皮绒:poly/nylonpeach涤纶格子:polyestertaffeta rip-stop涤纶蜂巢塔丝隆:polyesterhoney taslan全消光涤纶低弹牛津布:fulldull poly te某tured o某ford涤锦交织桃皮绒:nylon/polyesterinter-woven peach synthetic fibre 合成纤维chemical fibre 化学纤维jute 黄麻gunny cloth (bag) 黄麻布(袋)mi某ture fabric, blend fabric 混纺织物woven fabric 机织织物spun silk 绢丝linen 麻织物woolen fabrics 毛织物(品)cotton te某tiles 棉纺织品cotton velvet 棉绒cotton fabrics棉织物(品)non-crushable 耐绉的viscose acetal fibre 黏胶纤维matching, colour combinations 配色 rayon fabrics 人造丝织物artificial fibre 人造纤维crewel work 绒线刺绣mulberry silk 桑蚕丝, 家蚕丝silk fabrics 丝织物silk spinning 丝纺linen cambric 手帕亚麻纱plain 素色figured silk 提花丝织物jacquard 提花织物applique embroidery 贴花刺绣discolourization 褪色mesh fabric 网眼织物bondedfibre fabric 无纺织物embroidered fabric 绣花织物fla某亚麻linen yarn 亚麻纱knitting 针织knitwear 针织品hosiery 针织物te某tile fabric织物 ramee, ramie 苎麻tussah silk 柞蚕丝calico 白布;本布serge 哔叽camel hair cloth 长毛骆驼绒plush 长毛绒tweed 粗(花)呢overcoating 大衣呢satin 缎子flannel 法兰绒worstedflannel 精纺法兰绒canvas 帆布valetin 立丁tartan 格子呢admiralty cloth 海军呢cotton prints花布gabardine 华达呢pongee 茧绸brocade 锦缎khaki drills 卡其布reversible khaki 双面卡cashmere 开司米anti-pressing standing velvet 抗拉力绒 sheetings 阔幅平布;被单布faille, bengaline, tussore 罗缎melton 麦尔登呢woolserge 毛哔叽cottoncloth, cotton piecegoods 棉布bleached cotton cloth漂白棉布cottonserge 棉哔叽trueran 棉涤纶vinylon 维尼纶cotton sateen 棉缎cotton poplin 棉府绸cotton pongee 棉茧绸cotton plush 棉织长毛绒cotton gabardine 棉织华达呢palace 派力斯 seersucker, blisger crepe, plisse crepe 泡泡纱 georgette 乔其纱herringbone 人字呢;海力蒙flannelette 绒布 taffeta 塔夫绸cotton venetians 泰西缎broche quilts 提花床单布mosquito netting 蚊帐纱grass cloth 夏布mackintosh cloth 橡胶防雨布drills 斜纹布embroidered gauze 绣花纱罗linen, linen cloth 亚麻布linen canvas 亚麻帆布linen checks 亚麻格子布iondanthren cloth 阴丹士林布camblet 羽纱tapestry satin 织锦缎crepe satin 绉(背)缎bobbin net 罗纱acrylic fibres 腈纶artificial cotton 人造棉artificial silk, rayon 人造丝artificial wool人造毛capron, kapron 卡普纶dacron, terylene 的确良modelon 毛涤纶nylon 锦纶(耐纶)nylon chiffon 尼龙薄绸orlon 奥纶terylene 涤纶c cotton 棉关于面料的缩写c::cotton 棉w:wool 羊毛m:mohair 马海毛rh:rabbithair 兔毛al:alpaca 羊驼毛s:silk真丝j:jute 黄麻l:linen 亚麻ts:tussahsilk 柞蚕丝yh:yarkhair 牦牛毛ly:lycra莱卡ram:ramine 苎麻hem:hemp 某某某t:polyester涤纶ws:cashmere羊绒n:nylon 锦纶(尼龙)a:acrylic 腈纶tel:tencel 天丝,是lyocell莱赛尔纤维的商品名 la:lambswool羊羔毛md:model 莫代尔ch:camelhair 驼毛cvc:chiefvalue of cotton涤棉倒比(涤含量低于60%以下) ms:mulberrysilk 桑蚕丝r:rayon 粘胶里料:lining面料:fabric平纹:taffeta斜纹: twill缎面: satin /charmeuse绡: lustrine提花:jacquard烂花:burnt-out春亚纺:pongee格子:check条子: stripe双层: double– layer双色: two –tone花瑶: faille高士宝:koshibo雪纺:chiffon乔其:georgette弹力布:spande某/elastic/strec/lycra牛仔布:jeanet牛津布: o某ford帆布: cambric涤棉p/c涤捻:t/r白条纺: whitestripe黑条纺: black stripe空齿纺: emptystripe水洗绒/桃皮绒: peachskin卡丹绒: peachtwill绉绒: peachmoss玻璃纱: organdy常用服装英语缩写a.h. armhole 夹圈abs area bounded staple fabric 面粘非织造布 adl acceptable defect level 允许疵点标准aql acceptable quality level 验收合格标准attn. attention 注意aud. audit 稽查b. back 后b.h. button hole 钮门/扣眼b.l. back length 后长b.p. bust point 胸点bk. black 黑色bl bust line 胸围线bmt basic motion time 基本动作时间bnl back neckline 后领圈线bnp/bnpt back neck point 后领点br back rise 后浪bsp back shoulder point 后肩颈点btm. bottom 衫脚btn. button 钮扣c.v.c. chief value of cotton 棉为主的'混纺物 c/b (c.b.) center back 后中c/f (c.f.) center front 前中cad computer aided design 电脑辅助设计cae computer aided engineering 电脑辅助工程cal computer aided layout 电脑辅助排料cam computer aided manufacture 电脑辅助制造cap computer aided pattern 电脑辅助画样cbf center back fold 后中对折cbl center back line 后中线cbn-w center back neck point to waist 后颈点至腰 cfl center front fold 前中对折ci corporate identify 企业标识cif cost, insurance & freight 到岸价clr. color 颜色cmt cutting, making, trimming 来料加工col. color 颜色cord. corduroy 灯心绒cs commercial standards 商业标准ctn. cotton 棉ctn. no. carton no. 纸箱编号d. denier 旦d. & k. damaged & kept 染厂对疵布的认赔d.b. double-breasted 双襟d/y delivery 出货, 交付dbl double 双dbl ndl double needle 双针dept. department 部门dk. dark 深色doz. dozen 打e.g. e某ampli gratia / for e某ample 例如el elbow line 手肘线emb. embroidery 绣花, 车花etc. et cetera=and so forth 等等e某p. e某port 出口f. front 前fab. fabric 布料faq fair average quality 中等品fb freight bill 装货清单fnp front neck point 前颈点fob free on board 离岸价fqc field quality control 现场质量控制 fty. factory 工厂g. green 绿色g.w. gross weight 毛重gl grain line 布纹h. hips 坐围hl hips line 坐围线in. inch 英寸jkt. jacket 夹克k knit 针织l. large 大号l. line 莱尼/号(纽扣大小单位)l. length 长度l. left 左l.g. length grain 经向, 直纹lb. pound 磅lbl label 唛头, 商标loa length over all 全长m medium 中码m/b must be 必须m/c machine 机械mat. material 物料meas. measurement 尺寸mhl middle hips line 中臀围线mkt. market 市场mmts. measurements 尺寸n. to w.(n.-w.) nape to waist 腰直n.p. neck point 肩颈点ndl. needle 针nil nothing 无nk. neck 颈圈o/n order no. 定单号ojt on-the-job training 在职培训os over size 超大号ovrlk. overlock 及骨, 包缝p. purple 紫色p.o. no. production order no. 生产制造单编号 p.o.b. post office bo某邮箱p.p. paper pattern 纸样p.s.i. per square inch 每平方英寸p/c polyester/cotton 涤棉混纺织物pa polyamide 聚酰胺pap posterior armpit point 腋窝后点pb private brand 个人商标pc. price 价格pcs. pieces 件, 个pkg. package 包装pkt. pocket 口袋pls. please 请pnt point 点p-o-r product-o-rial system 吊挂系统pos. position 位置pp poly propylene 聚丙烯pv polyvinyl fibre 聚乙烯纤维pvc polyvinyl chloride 聚氯乙烯qc quality control 质量控制qly. quality 质量qpl qualified products list 合格产品目录 qty. quantity 数量r. right 右r.s. right side 正面r.t.w. ready to wear 成衣ref. reference 参考, 参照rej. reject 拒绝rm. room 场所rn. rayon 人造丝s small 小码s.a. seam allowance 止口s.b. single breasted 单排纽扣, 单襟s.p. shoulder point 肩端点s.p.i. stitch per inch 每英寸线迹数s.p.m. stitch per minutes 每分钟线迹数 s/b should be 应该sc shopping center 购物中心sgl ndl single needle 单针slv. sleeve 袖子smpl sample 样板snl single 单snp side neck point 颈侧点spec. specification 细则sq. ft. square feet 平方英尺sty. style 款式sz. size 尺码t/c terylence/cotton 涤棉织物t/s top stitches 间面线tqc total quality control 全面质量控制tqm total quality management 全面质量管理 t-s t-shirt t恤衫ubl under bust line 下胸围线v. violet 紫色w woven 梭织w. waist 腰围w. width 宽度w.b. waistband 裤头w.i.p. work in process 半成品w.l. waist line 腰线w.s. wrong side 反面w/ withwmsp. workmanship 手工, 车工wt. weight 重量某 king size 特大号某l e某tra large 特大号某某l e某tra e某tra large 超特大号y. yellow 黄色yd. yardage 码数gws garment wash sample 成衣洗水样板rn reference number 参考号lcl less container loaded 拼柜?p/c polyester/cotton 涤纶/棉t/c terylene/cotton 涤纶/棉e某t. e某tension number分机号cell. cellular phone 手机upc universal product code 通用产品码,通用货单代码cmpt cut/make/pack/trimiq including quotaeq e某cluding quotas/y sample yardagelsaw. 穿后左侧骨(leftside as weared)sku stock keeping unit为储存单位。

离散三角网格模型顶点法矢量估算

离散三角网格模型顶点法矢量估算

离散三角网格模型顶点法矢量估算肖和;杨旭静;郑娟【摘要】提出一种新的三角网格模型顶点法矢估算方法,采用以三角网格顶点一阶邻域三角形的形状因子与顶点到三角形质心距进行综合加权的方法。

同时指出:在同等三角网格曲面,随着三角网格划分精度的提升,网格顶点法矢估算精度有增大趋势;在同等网格划分精度条件下,对于平均曲率小以及平均曲率变化率小的三角网格模型,其网格顶点法矢估算精度也有增大趋势。

实例计算和误差分析表明,该方法的计算结果更为精确合理。

%A new estimation method of triangular mesh vertex normal vector is present, which chooses the shape and the gravity as the weight of each triangle patches normal in the first order neighbor triangle of the vertex. Thus, in the same triangular mesh surface, when the precision of triangle mesh increases, the vertex normal vector estimation increases; in the same precision of triangular mesh, when the mean curvature and mean curvature variation of triangular mesh model decreases, the vertex normal vector estimation also increases. The examples and error analyses show that the method of calculation result is more accurate and reasonable.【期刊名称】《计算机工程与应用》【年(卷),期】2016(052)019【总页数】5页(P196-200)【关键词】电脑辅助设计与电脑辅助制造(CAD/CAM);三角网格模型;顶点法矢估算【作者】肖和;杨旭静;郑娟【作者单位】湖南大学汽车车身先进设计制造国家重点实验室,长沙 410082;湖南大学汽车车身先进设计制造国家重点实验室,长沙 410082;湖南大学汽车车身先进设计制造国家重点实验室,长沙 410082【正文语种】中文【中图分类】TP391XIAO He,YANG Xujing,ZHENG Juan.Computer Engineering and Applications,2016,52(19):196-200.三角网格模型是CAD/CAM系统中一种重要的曲面离散逼近表示形式,因其快速灵活、拓扑适应能力强等优点,而被广泛应用在汽车、造船、航空航天等与制造业密切相关的工业领域[1-3]。

李金斯坦无张力疝修补术

李金斯坦无张力疝修补术

翻译:同济医院普外科
Aesculap. All it takes to operate.
Introduction 简介
In 1996,Liechtenstein attracted the attention of surgeons worldwide by justifying the use of a prosthetic mesh to create a tension-free hernia repair, thereby minimizing postoperative discomfort, one of the supplementary criteria for evaluating the efficacy of hernia repair.

1984年起,Lichtenstein及其同伴即开始在手术
中常规使用聚丙烯网片,并将这种手术方式命名为 无张力疝成形术。
This technique has become the gold standard in open tension-free hernioplasty.
• 今天,这一技术已成为开放式无张力疝成形手 术的金标准。
Anatomy 解剖 ------ Deep tissues 深层组织
1. Inguinal ligament
腹股沟韧带
2. Internal oblique muscle
腹内斜肌
3. Transversus muscle
腹横肌
4. Rectus sheath
腹直肌鞘
5. Cremasteric muscle
无张力疝成形术是在腹横筋膜(TF)和腹外斜肌腱膜(EOA)之间放置一张聚丙烯网片
来加固腹股沟管的后壁。网片应延伸至腹股沟三角之外,以提供足够的网片/组织接触 界面。在腹内压增加的情况下,腹外斜肌腱膜(EOA)可在网片上产生相应的对抗力。 这种反方向的抗张力使得腹内压的增加有助于修补。

纺织外贸常用英语

纺织外贸常用英语

原料涤纶:ployester 锦纶:nylon/polyamide 醋酸:acetate 棉cotton 人棉:rayon 人丝:viscose仿真丝:imitated silk fabric 真丝:silk 氨纶:spandex/elastic/strec/lycra 长丝: filament 短纤: spun 黑丝:black yarn 阳离cation 三角异形丝: triangle profile 空气变形丝:air-jet texturing yarn 超细纤维: micro – fibric 全拉伸丝: fdy full drawn yarn)预取向丝: poy(preoriented yarn)拉伸变形丝: dty(draw textured yarn)牵伸加捻丝: dt (drww twist)质量标准: quality standard(oeko-tex standard 100、iso9002、sgs、its、aatcc、m&s)客检: customer inspection台板检验:table inspection经向检验: lamp inspection色牢度: color fastness氯漂白色牢度: chlorine bleach color fastness尺寸稳定性: dimensional stability 外观持久性: appearance retention拉伸强度: tensile strength撕破强度: tear strength接缝滑裂: seam slippage抗起毛起球性: pilling resistance耐磨性: abrasion resistance拒水性: water repellency抗水性: water resistance织物密度: thread per inch/stich density纱支: yarn count 克重: weight wool 羊毛m mohair 马海毛rh、 rabbit hair 兔毛al alpaca 羊驼毛s silk 真丝j jute 黄麻l linen 亚麻ram ramie 苎麻hem hemp 大麻t polyester 涤纶ws cashmere 羊绒wa angora 安哥拉山羊毛la lambswool 羊羔毛ts tussah silk 柞蚕丝yh yark hair 牦牛毛md modal 莫代尔ch camel hair 驼绒cu cupro 铜 ms mulberry silk 桑蚕丝 ly lycra 莱卡 kender kender 罗布麻 silkool silkool 大豆蛋白纤维cvc cvc 涤棉倒比n nylon 锦纶r rayon 人棉v viscose 粘胶sp spendex 氨纶pp polypropylene 丙纶pv polyvinyl 维纶 a acrylic 腈纶tel tencel 天丝纱线纱线 yarns棉及其混纺纱线 cotton, cotton mixed & blended yarns棉纱 cotton yarns涤棉纱 t/c & cvc yarns粘棉纱 cotton/rayon yarns棉晴纱 cotton/acrylic yarns棉/氨纶包芯纱 cotton/spandex yarns棉与其他混纺纱 cotton/others blended yarns毛纺系列纱线 woollen yarn series羊绒纱 cashmere yarn series全羊毛纱 wool (100%) yarns毛晴纱 wool/acrylic yarns毛涤纱 wool/polyester yarns毛粘纱 wool/viscose yarns毛/丝纱wool/silk yarnss羊毛/其他 wool/other yarns兔毛纱 angora yarns雪兰毛线 shetland yarns牦牛毛纱 yak hair yarns羊仔毛纱 lambswool yarns真丝系列纱线 silk yarn series白厂丝 white steam filature yarns双宫丝 duppion silk yarns柞蚕丝 tussah silk yarns绢丝 spun silk yarns柞绢丝 tussah spun silk yarns柚丝 silk noil yarns真丝线 silk threads丝棉混纺纱 silk/cotton blended yarns麻纺系列纱线 halm yarn series***系列纱线 hemp yarn series亚麻系列纱线 linen yarn series苎麻系列纱线 ramie yarn series黄麻系列纱线 jute yarn series其他植物纤维纱线 other plant yarns剑麻系列纱线 sisal yarn series人造纤维和合成纱线 manmade & synthetic yarns 晴纶纱 acrylic yarns晴纶仿羊绒 cashmere-like acrylic yarns仿兔毛 sunday angora yarns锦纶丝 polyamide yarns涤纶纱/丝 polyester yarns人造棉纱 spun rayon yarns天丝纱 tencel yarns弹力纱线 elastane yarns涤粘纱 t/r (polyester/rayon) yarns人棉混纺纱 spun rayon blended yarns其他化纤纱线 other synthetic yarns人造长丝或线 viscose filament yarns or threads 花色纱线雪尼尔纱 chenille yarns大肚纱 big-belly yarns带子纱 tape yarns马海毛纱 mohair yarns羽毛纱 feather yarns蜈蚣纱 centipede like yarns项链纱 neckline yarns辫子纱 pigtail yarns梯子纱 ladder yarns圈圈纱 loop yarnstt 纱 tt yarns结子纱 knot yarns乒乓纱 ping-pong yarns其它花色纱线 other fancy yarns金属纱线 metal yarns绳、索及缆 twine, cordage, rope & cables面料靛蓝青年布:indigo chambray人棉布植绒:rayon cloth flockingpvc植绒:pvc flocking针织布植绒:knitting cloth flocking珠粒绒:claimond veins倒毛:down pile making平绒:velveteen (velvet-plain)仿麂皮:micro suede牛仔皮植绒:jeans flocking尼丝纺:nylon taffeta (nylon shioze)尼龙塔夫泡泡纱:nylon seersucker taffeta素面植绒:plain flocking印花植绒:flocking(flower)雕印植绒:embossing flocking皮革沟底植绒:leather imitation flocking牛仔植绒雕印:embossing jeans flocking兔羊绒大衣呢:angora cachmere overcoating羊毛双面呢:double-faced woolen goods立绒呢:cut velvet顺毛呢:over coating粗花呢:costume tweed弹力呢:lycra woolen goods塔丝绒: nylon taslon塔丝绒格子:n/taslon ripstop桃皮绒:polyester peach skin涤塔夫:polyester taffeta春亚纺:polyester pongee超细麦克布:micro fiber锦棉稠(平纹):nylon-cotton fabric (plain)重平锦棉稠:nylon-cotton-cotton fabric(double weft) 人字锦棉纺:nylon-cotton fabric斜纹锦棉纺:nylon-cotton fabric (twill)素色天鹅绒:solid velvet抽条磨毛天鹅绒:rib fleece velvet雪花天鹅绒:melange velvet轧花天鹅绒:ginning velvet粒粒绒布:pellet fleece velvet麻棉混纺布:linen/cotton blended fabric麻棉交织布:linen/cotton mixed fabric素色毛巾布:solid terry蚂蚁布:fleece in one side素色卫衣布:solid fleece鱼网布:fleece彩条汗布:color-stripes single jerseyt/r弹力布:t/r bengalinet/c色织格子布:t/c yarn dyed check fabric弹力仿麂皮:micro suede with spandext/r仿麂皮:t/r micro suede仿麂皮瑶粒绒复合布:100%polyester micro suede bounding with polar fleece仿麂皮针织布复合:100% polyester bounding with knitting micro suede fabric仿麂皮羊羔绒复合布:100% polyester micro suede bounding with lamb fur蜡光缎:cire satine全消光尼丝纺:full dull nylon taffeta半消光尼丝纺:semi-dull nylon taffeta亮光尼龙:trilobal nylon全消光塔丝隆:full dull nylon taslan全消光牛津布:full dull nylon oxford尼龙格:nylon rip-stop塔丝隆格:taslan rip-stop哑富迪:full dull micro polyester pongee全消光春亚纺:full dull polyester pongee春亚纺格子:polyester pongee rip-stop全消光涤纶桃皮绒:full dull polyester peach宽斜纹桃皮绒:big twill polyester peach涤锦复合桃皮绒:poly/nylon peach涤纶格子:polyester taffeta rip-stop涤纶蜂巢塔丝隆:polyester honey taslan全消光涤纶低弹牛津布:full dull poly textured oxford涤锦交织桃皮绒:nylon/polyester inter-woven peach synthetic fibre 合成纤维chemical fibre 化学纤维 jute 黄麻gunny cloth (bag) 黄麻布(袋) mixture fabric, blend fabric 混纺织物woven fabric 机织织物spun silk 绢丝 linen 麻织物 woolen fabrics 毛织物(品) cotton textiles 棉纺织品 cotton velvet 棉绒 cotton fabrics 棉织物(品)non-crushable 耐绉的 viscose acetal fibre 黏胶纤维 matching, colour combinations 配色rayon fabrics 人造丝织物 artificial fibre 人造纤维 crewel work 绒线刺绣 mulberry silk 桑蚕丝, 家蚕丝 silk fabrics 丝织物 silk spinning丝纺 linen cambric 手帕亚麻纱 plain 素色figured silk 提花丝织物 jacquard 提花织物applique embroidery 贴花刺绣discolourization 褪色mesh fabric 网眼织物bondedfibre fabric 无纺织物 embroidered fabric 绣花织物 flax 亚麻linen yarn 亚麻纱knitting 针织knitwear 针织品hosiery 针织物textile fabric织物 ramee, ramie 苎麻tussah silk 柞蚕丝calico 白布;本布serge 哔叽camel hair cloth 长毛骆驼绒 plush 长毛绒tweed 粗(花)呢overcoating 大衣呢satin 缎子 flannel 法兰绒 worsted flannel 精纺法兰绒canvas 帆布valetin 立丁tartan 格子呢admiralty cloth 海军呢 cotton prints 花布gabardine 华达呢pongee 茧绸brocade 锦缎khaki drills 卡其布reversible khaki 双面卡cashmere 开司米anti-pressing standing velvet 抗拉力绒sheetings 阔幅平布;被单布faille, bengaline, tussore 罗缎 melton 麦尔登呢wool serge 毛哔叽cotton cloth, cotton piecegoods 棉布bleached cotton cloth 漂白棉布cotton serge 棉哔叽trueran 棉涤纶vinylon 维尼纶cotton sateen 棉缎cotton poplin 棉府绸cotton pongee 棉茧绸cotton plush 棉织长毛绒cotton gabardine 棉织华达呢palace 派力斯seersucker, blisger crepe, plisse crepe 泡泡纱georgette 乔其纱herringbone 人字呢;海力蒙flannelette 绒布taffeta 塔夫绸cotton venetians 泰西缎broche quilts 提花床单布mosquito netting 蚊帐纱grass cloth 夏布mackintosh cloth 橡胶防雨布drills 斜纹布embroidered gauze 绣花纱罗linen, linen cloth 亚麻布linen canvas 亚麻帆布linen checks 亚麻格子布iondanthren cloth 阴丹士林布camblet 羽纱tapestry satin 织锦缎crepe satin 绉(背)缎bobbin net 罗纱acrylic fibres 腈纶artificial cotton 人造棉artificial silk, rayon 人造丝artificial wool 人造毛capron, kapron 卡普纶dacron, terylene 的确良modelon 毛涤纶nylon 锦纶(耐纶)nylon chiffon 尼龙薄绸orlon 奥纶terylene 涤纶c cotton 棉关于面料的缩写c::cotton 棉w:wool 羊毛m:mohair 马海毛rh:rabbit hair 兔毛al:alpaca 羊驼毛s:silk真丝j:jute 黄麻l:linen 亚麻ts:tussah silk 柞蚕丝yh:yark hair 牦牛毛ly:lycra莱卡ram:ramine 苎麻hem:hemp ***t:polyester 涤纶ws:cashmere 羊绒n:nylon 锦纶(尼龙)a:acrylic 腈纶tel:tencel 天丝,是lyocell莱赛尔纤维的商品名la:lambswool 羊羔毛md:model 莫代尔ch:camel hair 驼毛cvc:chief value of cotton涤棉倒比(涤含量低于60%以下)ms:mulberry silk 桑蚕丝r:rayon 粘胶里料: lining 面料:fabric 平纹: taffeta 斜纹: twill 缎面: satin / charmeuse 绡: lustrine 提花: jacquard 烂花: burnt-out 春亚纺:pongee 格子: check 条子: stripe双层:double – layer 双色:two –tone 花瑶:faille 高士宝: koshibo 雪纺: chiffon 乔其:georgette 弹力布:spandex/elastic/strec/lycra牛仔布:jeanet 牛津布:oxford 帆布:cambric涤棉p/c 涤捻: t/r 白条纺: white stripe 黑条纺:black stripe空齿纺:empty stripe 水洗绒/桃皮绒:peach skin卡丹绒: peach twill 绉绒: peach moss 玻璃纱: organdy 常用服装英语缩写a.h. armhole 夹圈abs area bounded staple fabric 面粘非织造布adl acceptable defect level 允许疵点标准aql acceptable quality level 验收合格标准attn. attention 注意aud. audit 稽查b. back 后b.h. button hole 钮门/扣眼b.l. back length 后长b.p. bust point 胸点bk. black 黑色bl bust line 胸围线bmt basic motion time 基本动作时间bnl back neckline 后领圈线bnp/bnpt back neck point 后领点br back rise 后浪bsp back shoulder point 后肩颈点btm. bottom 衫脚btn. button 钮扣c.v.c. chief value of cotton 棉为主的混纺物c/b (c.b.) center back 后中c/f (c.f.) center front 前中cad computer aided design 电脑辅助设计cae computer aided engineering 电脑辅助工程cal computer aided layout 电脑辅助排料cam computer aided manufacture 电脑辅助制造cap computer aided pattern 电脑辅助画样cbf center back fold 后中对折cbl center back line 后中线cbn-w center back neck point to waist 后颈点至腰cfl center front fold 前中对折ci corporate identify 企业标识cif cost, insurance & freight 到岸价clr. color 颜色cmt cutting, making, trimming 来料加工col. color 颜色cord. corduroy 灯心绒cs commercial standards 商业标准ctn. cotton 棉ctn. no. carton no. 纸箱编号d. denier 旦d. & k. damaged & kept 染厂对疵布的认赔d.b. double-breasted 双襟d/y delivery 出货, 交付dbl double 双dbl ndl double needle 双针dept. department 部门dk. dark 深色doz. dozen 打e.g. exampli gratia / for example 例如el elbow line 手肘线emb. embroidery 绣花, 车花etc. et cetera=and so forth 等等exp. export 出口f. front 前fab. fabric 布料faq fair average quality 中等品fb freight bill 装货清单fnp front neck point 前颈点fob free on board 离岸价fqc field quality control 现场质量控制fty. factory 工厂g. green 绿色g.w. gross weight 毛重gl grain line 布纹h. hips 坐围hl hips line 坐围线in. inch 英寸jkt. jacket 夹克k knit 针织l. large 大号l. line 莱尼/号(纽扣大小单位)l. length 长度l. left 左l.g. length grain 经向, 直纹lb. pound 磅lbl label 唛头, 商标loa length over all 全长m medium 中码m/b must be 必须m/c machine 机械mat. material 物料meas. measurement 尺寸mhl middle hips line 中臀围线mkt. market 市场mmts. measurements 尺寸n. to w.(n.-w.) nape to waist 腰直n.p. neck point 肩颈点ndl. needle 针nil nothing 无nk. neck 颈圈o/n order no. 定单号ojt on-the-job training 在职培训os over size 超大号ovrlk. overlock 及骨, 包缝p. purple 紫色p.o. no. production order no. 生产制造单编号p.o.b. post office box 邮箱p.p. paper pattern 纸样p.s.i. per square inch 每平方英寸p/c polyester/cotton 涤棉混纺织物pa polyamide 聚酰胺pap posterior armpit point 腋窝后点pb private brand 个人商标pc. price 价格pcs. pieces 件, 个pkg. package 包装pkt. pocket 口袋pls. please 请pnt point 点p-o-r product-o-rial system 吊挂系统pos. position 位置pp poly propylene 聚丙烯pv polyvinyl fibre 聚乙烯纤维pvc polyvinyl chloride 聚氯乙烯qc quality control 质量控制qly. quality 质量qpl qualified products list 合格产品目录qty. quantity 数量r. right 右r.s. right side 正面r.t.w. ready to wear 成衣ref. reference 参考, 参照rej. reject 拒绝rm. room 场所rn. rayon 人造丝s small 小码s.a. seam allowance 止口s.b. single breasted 单排纽扣, 单襟s.p. shoulder point 肩端点s.p.i. stitch per inch 每英寸线迹数s.p.m. stitch per minutes 每分钟线迹数s/b should be 应该sc shopping center 购物中心sgl ndl single needle 单针slv. sleeve 袖子smpl sample 样板snl single 单snp side neck point 颈侧点spec. specification 细则sq. ft. square feet 平方英尺sty. style 款式sz. size 尺码t/c terylence/cotton 涤棉织物t/s top stitches 间面线tqc total quality control 全面质量控制tqm total quality management 全面质量管理t-s t-shirt t恤衫ubl under bust line 下胸围线v. violet 紫色w woven 梭织w. waist 腰围w. width 宽度w.b. waistband 裤头w.i.p. work in process 半成品w.l. waist line 腰线w.s. wrong side 反面w/ withwmsp. workmanship 手工, 车工wt. weight 重量x king size 特大号xl extra large 特大号xxl extra extra large 超特大号y. yellow 黄色yd. yardage 码数gws garment wash sample 成衣洗水样板rn # reference number 参考号lcl less container loaded 拼柜?p/c polyester/cotton 涤纶/棉t/c terylene/cotton 涤纶/棉ext. extension number分机号cell. cellular phone 手机upc universal product code 通用产品码,通用货单代码cmpt cut/make/pack/trimiq including quotaeq excluding quotas/y sample yardagelsaw. 穿后左侧骨(left side as weared)sku stock keeping unit为储存单位。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Cutting on Triangle Mesh:Local Model-Based Haptic Display forDental Preparation Surgery SimulationDaniel Wang,Yuru Zhang,Member,IEEE,Yuhui Wang,Yuan-Shin Lee,Peijun Lu,and Yong WangAbstract—A new method to realize stable and realistic cutting simulation using an impedance display haptic device andmicrocomputer is presented in this paper.Material removal or cutting simulation is a critical task in dental preparation surgery simulation.In this paper,a piecewise contact force model is proposed to approximately describe the cutting process.Challenging issues of minimizing the difference between the cutting simulation and haptic contact simulation are analyzed.The proposed contact-based simulation method is developed for a one-dimensional cutting task and can be expanded to three-dimensional cases.Local model-based multirate simulation cutting architecture is proposed and force control of the haptic device is decoupled from the cutting simulation loop,which can both ensure high fidelity of dynamical simulation as well as maintain stability of the haptic device.The cutting operation is realized using spherical and cylindrical shaped tools.An experiment based on the Phantom desktop proves that fidelity in one-dimensional cutting can be realized and stability in three-dimensional cutting can be ensured using the force-filtering method.Index Terms—Dental surgery simulation,haptic display,cutting simulation,impedance display,piecewise contact force model,local model,multirate simulation,stability.æ1I NTRODUCTION1.1BackgroundI N dental surgery,typical operations include cutting the tooth using a high-speed rotating tool,which is essential to performing cavity preparation and other procedures. During these operations,haptic sensation is important for the surgeon to implement the surgery successfully.Dental students currently use artificial teeth and jaws or visual-only computer simulations to practice the operation.Plastic models cannot provide the level of detail and material properties of real-life teeth and procedures[1].Sensorimo-tor skill in nature is lost in classical visual-only computer simulations.Therefore,haptically enhanced simulation is proposed to provide the sensorimotor involvement needed for dental training.Some pioneering work has been done in the haptic-based dental training field.Ranta et al.introduced a concept design of a Phantom-based dental training system to practice cavity preparation[1].Thomas et al.developed a training system with the Impulse2000,enabling the operator to practice the detection of carious lesions[2].Their system focuses on probing the difference between different tissues on a tooth,while cutting simulation is not considered.Compared with traditional haptic contact simulation, special constraints must be met for cutting-related haptic surgery simulation[3],[4].In cutting simulation,tissues will be removed according to the interaction between the moving tool and tissues.This feature imposes a challenge in the computation of interaction force.Considering the goal of dental cutting surgery simula-tion and the characteristics of the dynamical cutting process,challenges in cutting simulation can be summar-ized as follows:plex interaction dynamics:Interaction forceduring cutting is influenced by multiple variables,such as the rotating dynamics of the tool,the heateffect from high speed machining,and the fracturemechanism of the tooth,etc.2.Virtual environments(VE)with complex properties:The geometry of a tooth surface is heavily curvedand different tissues exist inside the tooth.Mappingfrom the motion signal of the haptic device to thevirtual force signal is nonlinear.3.Real-time evolving VE:The shape of the tooth isevolving because of material removal from the tooth’ssurface.How to describe the relationship between theremoved material and the interaction force whilemaintaining stability is another challenge.4.Effect of a cutting tool’s shape on the cutting forcecomputation:Multipoint collision detection must beconsidered and material removed is decided byshape of the tool’s surface.The updating rate of the. D.Wang,Y.Zhang,and Y.Wang are with the Robotics Institute,BeihangUniversity,No.37Xueyuan Road,Haidian District,Beijing,PR China.E-mail:hapticwang@,yuru@,wangyuhui@..Y.-S.Lee is with the Department of Industrial Engineering,North CarolinaState University,Raleigh,NC27695.E-mail:yslee@..P.Lu and Y.Wang are with the School of Stomatology,Peking University,Beijing,PR China.E-mail:kqcadc@.Manuscript received5Dec.2004;revised29Apr.2005;accepted12May2005;published online8Sept.2005.For information on obtaining reprints of this article,please send e-mail to:tvcg@,and reference IEEECS Log Number TVCGSI-0161-1204.1077-2626/05/$20.00ß2005IEEE Published by the IEEE Computer Societysimulation may be decreased because of the largecomputation and,also,stability will be decreasedbecause of the effect.5.Unpredicted movement of a cutting tool:Thetrajectory of the cutting tool is generated by real-time motion from the operator,which can bearbitrary.The effect of the various feeding displace-ment and feeding velocity in the three-dimensionalworkspace on interaction force and material removalneed to be reflected precisely.Considering the above challenges,the real challenge lies in how to achieve balance among fidelity,stability,and computation efficiency in the dental cutting simulation. Several key tasks,such as object modeling,collision detection,haptic rendering,model update,etc.,must be considered simultaneously.This paper focuses on addres-sing these issues.1.2Literature ReviewAgus et al.introduced development of haptic-enabled bone cutting simulation systems[5],[6].In their system,the volume model is used for the bone and the tool is simplified to be a sphere and a realistic cutting simulation result is pared to polygon model-based methods,the volume models impose stricter requirements for the computer’s memory and computational efficiency.A dual processor graphical display computer is usually needed to ensure real-time direct volume rendering.Petersik et al.[7] model a drilling instrument as a point cloud and use a modified version of the Voxmap-Pointshell algorithm[8]to sample the surface of the drill and generate appropriate forces at each sampled point.Morris et al.also work on a haptic/visual bone dissection simulation involving removal of material[9].Hybrid data representation that allows smooth surfaces is used for graphic rendering,while volumetric data is used for haptic feedback.Mendoza et al.discuss three methods for deformation or material removal computation:mass-spring meshes,FEA, and LEA methods[10].The displacement of the tip of the haptic device is used directly as the input variable for the mesh,which doesn’t consider the finite impedance property of the haptic device.The tool’s shape is usually simplified into a point or a line in cutting simulation[10],[11],[12].Cutting on the clay using different shaped tools has been supported by the Freeform1system[13].Zhu and Lee proposed a haptic simulation algorithm for NC cutting and machining planning[14],[15].Collision detection is carried out between the trajectory of the point or the line and the object being cut,which is not precise enough for simulating a collision between the tool’s boundary and the tooth.These systems usually adopt the voxel-based or the dexel-based modeling methods,which impose a critical requirement for the hardware configuration and simulation algorithms.The virtual coupling and time domain passivity methods have been used to analyze the stability of the haptic system [16],[17],[18],[19],[20].Implementation of these methods in a complex VE simulation such as dental cutting is difficult.Barbagli et al.gave the local model stability issues in deformed object manipulation[21],however,only one dimensional experiment is given for the algorithm imple-mentation.The stability of the rendering algorithm on the triangle mesh cutting simulation has not been reported systematically.1.3Organization of the PaperIn this paper,triangular mesh is used for modeling the tooth and the cutting tool is simplified to be an analytical shaped object.A force model based on the penetration distance between the tool and the tooth is formulated.In this paper,a vertex deformation method is developed to realize material removal.The remainder of this paper is organized as follows: Section2proposes a piecewise contact force model for simulating triangle mesh cutting.Section3discusses the one-dimensional cutting simulation method.Section4 expands the method into the three-dimensional cutting simulation and incorporates a local model to achieve a trade-off among fidelity,stability,and computational efficiency.Section5gives implementation and some practical experiment results,followed by the concluding remarks and some future research work in Section6.2A NALYSIS OF I NTERACTION S TATUS DURINGC UTTING2.1Piecewise Contact ModelIn this paper,a piecewise contact model based on interaction status transition is proposed to describe the dynamic cutting process under the operator’s real-time cutting operation and to realize fast computation of the interaction force and material removal.Under this idea,the cutting process can be described as a series of transitions among different interaction statuses.During the cutting process in a simulation,the relative motion of a virtual tool against a tooth is determined by the real-time motion of the haptic device.Three interaction statuses are defined:1)separation status,2)contact status, and3)cutting status.Separation status refers to the status when the tool does not make contact with the tooth in the geometry space.The contact status refers to the status when the tool makes contact with the tooth where no material is removed from the tooth and the cutting status is the status when the tool makes contact with the tooth and material is removed from the tooth.The cutting process is described as the transition among the three different statuses and the transition map among the three statuses is shown in Fig.1,where~F n is the contact force and F Limit is a predefined force threshold representing the resistance force limit to remove material from the tooth.From clinical dental operation,it is found that the cutting force against a tooth is mainly affected by the following parameters:the volume of removed material,the tool’s feeding velocity,the contact status between the tool and the tooth,and the friction force.Furthermore,the tooth’s surface is updated during real-time cutting.Therefore,the mapping from the device’s motion to the virtual force is a complex nonlinear mapping.In control theory,a nonlinear system can be transformed into a linear system at a local working point.Similarly,the cutting process can be described as a series of local contactprocesses.At any two consecutive simulation time periods k À1and k ,if (1)is satisfied,the cutting force can be computed using the piecewise contact force model.j @F e =@X 0j <X h ðk Þ¼X h ðk À1Þ;X 0ðk Þ¼X 0ðk À1Þ;&ð1Þwhere F e is the virtual force,X h k À1ðÞ;X h k ðÞis the position of the haptic device’s tip at two consecutive simulation time periods,and X 0k À1ðÞ;X 0k ðÞis the tooth’s boundary at two consecutive simulation time periods. is a finite,user-defined small value.Equation (1)means that the change of the interaction force resulting from material removal is small enough while the haptic device is held in one static position.In another sense,the critical thing that ensures the validity of the piecewise contact model is to maintain a small material removal volume within each cutting simulation cycle.The validity of (1)will be verified by experiment in Section 5.3.2.2Digital Model of Tooth and ToolThere are two objects in the virtual environment,the tooth and the dental tool.The tooth is supposed to be static in the world coordinate system.The tool moves along with the movement of the Phantom.The tooth is modeled using triangle mesh.The original data is multilayered points sampled via a laser scanning data acquisition device,which defines the boundary shape of the tooth.A minimal diagonal distance method is used to reconstruct the points’data into a triangle mesh [22].Triangles on the mesh are assigned with a predefined tissue property,which will be used in the force computation and graphical display.In order to display the force difference on different tissues,such as enamel,dentin,pulp,and cavity,several additional triangle meshes can be defined to describe the boundary between different tissues.These meshes separate the volume inside the original tooth shape into several subvolumes.At the beginning of the cutting simulation,all triangles on the mesh belong to the enamel tissue type.During the cutting process,the triangle mesh of the tooth surface model is modified.For each newly produced triangle,a tissue type detection algorithm is used to decide the physical property of the triangle.The model of the probe is constructed first,using UniGraphics,then it is exported as a VRML ingGHOST SDK,the VRML model is transformed into a triangle mesh.The cutting tool is described using an analytical model.The geometric center of the model corresponds to the position of the Phantom tip.2.3Definition of Different Tools in Dental Cutting Haptic SimulationIn a typical force rendering method,the dynamic object is simplified as a point [23].During the interaction between a tool and a tooth,a collision between a tooth and the tool’s shape needs to be detected to improve force fidelity.Three tools,the Physical Tool ,the Virtual Tool ,and the Cutting Tool ,are defined to enable force computation and tooth material removal.Motion scaling between the physical tool and the virtual tool is utilized to prevent the virtual tool from being totally immersed into the tooth triangle mesh.The relation between the three tools is dictated in Fig.2,where the tool is sphere-shaped.The center of the PhysicalTool ,~Xp ,corresponds to the position of the Phantom tip position ~Xh .The center of the Virtual Tool ,~X V ,is computed using a motion-scaling method,which will be used to do collision detection with the tooth’s triangle mesh.The centerof the Cutting Tool ,~XC ,is consistent with ~X V ,whereas the size of the Cutting Tool is smaller than that of the Virtual Tool .This tool is used to compute the cutting section on the tooth’s surface.The computation flowchart during the cutting process is dictated as in Fig. 3.Because the maximum stiffness displayed by the Phantom desktop is limited,the Physical Tool and the Virtual Tool will interpenetrate the tooth to get a continuous changing virtual force,whereas the Cutting Tool should be stopped under the physical constraint of the tooth’s surface,that is,the movement of the Cutting ToolWANG ETAL.:CUTTING ON TRIANGLE MESH:LOCAL MODEL-BASED HAPTIC DISPLAY FORDENTAL PREPARATION SURGERY (673)Fig.1.Interaction status transition during the cutting process.Fig.2.Relation between the three tools.putation flowchart of the cutting process.represents the feeding movement of the cutting tool in the physical world.Motion scaling is used to compute the position of the Virtual Tool:_~XV¼_~X p=K S;ð2Þ~X V kðÞ¼~X V kÀ1ðÞþ_~X VÁT;ð3Þwhere K S is the motion scaling variable,~X V kðÞand~X VkÀ1ðÞare the positions of the Virtual Tool at the currentand previous time step,and T is the sampling period of the haptic loop.In Fig.3,the task of collision detection is to find those vertices on the tooth’s triangle mesh that penetrate into the Virtual Tool’s sphere.In order to realize a stable haptic display,the computation rate of the collision detection should be greater than1KHz.In this paper,a typical space partition method is used to accelerate the collision detection process between the Virtual Tool and the tooth triangle mesh[24].3O NE-D IMENSIONAL C UT AGAINST V IRTUAL W ALL 3.1Virtual Force ComputationFor the virtual wall illustrated in Fig.4,X0represents the boundary of the wall,~n is the normal vector of the wall,K et is the virtual stiffness,and~F e is the virtual force.The direction of~n is the opposite direction of axis X.The three-dimensional motion signal of the haptic device is measured and only a one-dimensional signal,for instance,X h,is used in collision detection and material removal computation.Based on the interaction status transition model,the cutting process can be regarded as series of contacting processes.In the literature,a unilateral spring force model is utilized to compute the virtual interaction force[25]F e kðÞ¼ÀK et X h kðÞÀX0kÀ1ðÞ½ X h kðÞ!X0kÀ1ðÞF e kðÞ¼0X h kðÞ<X0kÀ1ðÞ; &ð4Þwhere F e kðÞis the virtual contact force in the current simulation loop,K et is the virtual contact stiffness of the wall,X h kðÞis the position of the haptic device in the current simulation loop,X0kÀ1ðÞis the position of the virtual wall’s boundary in the previous simulation loop.3.2Model for the Material RemovalIn one-dimensional cutting,the shape of the tool is simplified as a point and the material on the virtual wall is removed along the inverse normal of the wall.When the interaction force grows bigger than a threshold,the status between a tool and a virtual wall evolves from contacting to cutting and the boundary of the virtual wall should be updated as follows:X0kðÞ¼X0kÀ1ðÞþÁX;ð5ÞÁX¼ÀF e kðÞ=K me F e kðÞ!FÃeÁX¼0F e kðÞ<FÃe;&ð6Þwhere X0kðÞ,X0kÀ1ðÞis the coordinates of the virtual wall’s boundary at the current and previous time steps,ÁX is the depth of removed material from the surface of the virtual wall,K me is the removing coefficient of the material,FÃeis the threshold of the force that is needed to remove material from the tooth.The position of the tool in the graphical scene is computed using the following equation:X G¼X h X h>X0X G¼X0X h X0:&ð7ÞTo ensure a synchronous display between the graphical and the force display,the position of the tool in the graphical scene needs to be updated according to the interaction status.3.3Stability AnalysisInside the contact status for one-dimensional interaction, Colgate et al.give a sufficient condition to maintain system stability[25]b>KT2þB j j;ð8Þwhere b is the inherent damping of haptic device,K;B is the stiffness and damping of the virtual environment,and T is the sampling period.For the virtual wall with pure stiffness,the upper limit of virtual stiffness isK<2bT:ð9ÞHowever,this criterion is only suitable for contact simulation.In one-dimensional cutting,the boundary of the virtual wall is changing.Therefore,new stability criteria need to be derived.Based on the interaction status transition model,the cutting process is equivalent to a series of several contact statuses.Therefore,stability in the cutting process can be transferred into two components:1)Stability must be ensured inside each contacting phase and2)stability must be ensured at the switching time between two contacting statuses.For the first requirement,according to(4)and(9),the following criteria can be derivedK et<KÃe;ð10Þ674IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS,VOL.11,NO.6,NOVEMBER/DECEMBER2005 Fig.4.Interaction with the virtual wall.where K Ãe is the upper limit of virtual stiffness in a specified one-dimensional axis,which can be measured via experiment.For the second requirement,suppose that:1)At time k À2,the haptic device locates inside the constraint space and the material removal does not take place and 2)at time k À1,the material removal takes place and the boundary of the virtual wall is moving.That is,X 0k À2ðÞ¼X 0k Ài ðÞX 0k À1ðÞ¼X 0k À2ðÞ&i ¼3;ÁÁÁ;k:ð11ÞAccording to (1),the virtual force at time k needs to satisfy the following criteria:F e k ðÞÀF e k À1ðÞ< :ð12ÞCombined with (4),thenF e k ðÞÀF e k À1ðÞ¼ÀK et X h k ðÞÀX h k À1ðÞ½ þK et X 0k À1ðÞÀX 0k À2ðÞ½ ¼ÀK et X h k ðÞÀX h k À1ðÞ½ ÀK etF e k À2ðÞK me:ð13ÞCombined with (12)and (13),it can be derived thatK me >ÀK et F e k À2ðÞþK et X h k ðÞÀX h k À1ðÞ½ f g:ð14ÞConsider the biggest influence that the change of the virtual wall’s boundary has on the change of the virtual force,that is,X h k ðÞÀX h k À1ðÞ¼0:ð15ÞThe lower boundary of K me is approaching the max-imum value.The second stability criteria for the one-dimensional cutting system can be derived asK me >ÀK et F e k À2ðÞ:ð16ÞTherefore,the stability criteria for the one-dimensional cutting system can be derived asK et <K ÃeK me >ÀK et F e k À2ðÞ :&ð17Þ4T HREE -D IMENSIONAL C UT S IMULATION B ASED ON THE D YNAMIC L OCAL M ODEL4.1Contradiction between Fidelity and Efficiency In order to realize a realistic simulation,the first challenge is to meet the demand for high computation efficiency.Realistic simulation may require large computation,includ-ing collision detection,physical-based interaction force computation,collision response,and update of the virtual object’s model.According to the requirement of a 1KHz force update rate in the haptic display [25],it is difficult to finish all the above computation in the specified simulation loop.Therefore,the contradiction between fidelity and computation efficiency needed to be solved.Barbagli et al.propose a local model to compute the deformation of soft tissues,which is effective in solving the contradiction [21].The finite stiffness of the haptic device is another fundamental constraint for selecting the simulation algo-rithm.In the literature,the spring-damping model is commonly used to realize the transform from the motion signal of the haptic device to the virtual force signal.With regard to a haptic device with the impedance display principle,such as Phantom,the stiffness that can be simulated stably is within a range.Vibration or noise will occur if the stiffness range is violated.Within the stiffness range,the position of the haptic device will penetrate into the surface of the tooth’s boundary when simulating a big interaction force.In the graphical display scene,the virtual tool should be constrained on the surface of the tooth.Therefore,virtual proxy or “God-object”[21],[23]must be computed in real time to get a consistent display between the graphical and the haptic loops.Furthermore,it is necessary to compute the cutting section surface and update the tooth model in real time.With regard to the above requirements,the local model method is utilized in the material removal simulation in this paper.4.2Principle of 3D Local Model-Based Cutting SimulationDuring the cutting simulation,the tip of the Phantom desktop is driven under the operator’s movement and collision detection is implemented between the virtual tool and the triangle mesh of the tooth based on the space partition bounding box method.In order to reflect the influence of the tooth’s shape on the interaction force,the tangent plane at the contact point between the virtual tool and the tooth is constructed as the local model.Under a different interaction status,the local model should reflect the tooth’s shape and stiffness characteristics on the contact point.As Fig.5a illustrates,the virtual tool locates in free space and the virtual force is zero and the local model doesn’t exist.In Fig.5b,the tool begins contacting the tooth and the local model is the tangent plane on the contact point.In Fig.5c,the position of the local model remains unchanged when the virtual tool moves forward and penetrates into the tooth.In Fig.5d,the position of the local model changes when the virtual tool slides along the tooth’s surface and the contacting status is maintained.In Fig.5e,the position of the local model changes when material is removed from the tooth’s surface.In Fig.5b,the given local model reflects the influence of the tooth’s shape and stiffness property.However,the virtual force cannot be computed directly using this model.BecauseWANGET AL.:CUTTING ON TRIANGLE MESH:LOCAL MODEL-BASED HAPTIC DISPLAY FOR DENTAL PREPARATION SURGERY...675Fig.5.Evolution of the local model during the cutting process.the tool is sphere-shaped instead of point-shaped,the local model must be translated to reflect the collision between the tool’s boundary and tooth’s surface.Illustrated by Fig.6a,the local model should be translated from position 1to position 2corresponding to the case in Fig.5b.Illustrated by Fig.6b,the local model should be translated from position 1to position 2corresponding to the case in Fig.5c.The architecture of the local model-based multirate simulation system is given in ing the above model,force rendering and control of the haptic device is decoupled from the cutting simulation loop.In the cutting simulation loop,the local model is constructed at a relatively low update rate according to the high update rate motion of the haptic device and the low update rate material removal computation.4.3Real-Time Construction of the Local ModelThe computation principle is illustrated in Fig.8,where ~N V iis the normal of the triangle’s vertex within the tooth’striangle mesh that penetrates into the virtual tool.~N T iis the normal vector of the triangle within the tooth mesh that penetrated into the virtual tool.Suppose the center point of the plane is ~X LM x p ;y p ;z p ÀÁand the normal of the plane is ~n LM n x ;n y ;n z ÀÁ.Using thedynamic ~XLM and ~n LM ,the plane can be determined.Then,~n LM ¼X n i ¼1~N T i!X n i ¼1~N T i !;,ð18Þ~X LM ¼~X V þÁd Á~n LM ;ð19Þwhere ~XV is center of the virtual tool computed in (2),Ád is the depth that the virtual tool penetrated into the tooth mesh,Ád ¼Max Ád i ðÞ;ð20Þwhere Ád i is the distance from the triangle’s vertex withinthe tooth mesh to the surface of the virtual tool and Max ðÞmeans to get the maximum value among all distances.Thedistance is computed along the negative direction of ~N V i.4.4Force Rendering in the High Update Rate LoopInside this loop,the position of the Phantom desktop is sampled and the position of the virtual tool is achieved using a motion-scaling method.Collision detection is computed between the virtual tool and the local model and virtual force can be computed.The update rate of the virtual force computation can be maintained over 1KHz because of the local model’s simplified geometry.The planar equation of the local model can be computed via the center point and normal in (18)and (19):Ax þBy þCz þD ¼0;ð21ÞA ¼n x ;B ¼n y ;C ¼n z ;ð22ÞD ¼Ax p þBy p þCz p :ð23ÞDefine the virtual proxy point ~XS x s ;y s ;z s ðÞ,which refers to the mapping position of the virtual tool to the boundary of the local model in order to compensate for the interpenetration effect of the haptic device.This position can be computed by the position of the virtual tool and the local model.x s ¼x v ÀA Áy s¼y v ÀB Áz s ¼z v ÀC Á ;8<:ð24Þwhere ~XV x v ;y v ;z v ðÞis the geometric center of the virtual tool and¼A Áx v þB Áy v þC Áz v ÀD ðÞ=A 2þB 2þC 2ÀÁ:ð25ÞThe unilateral constraint cased force model is used to compute contact force:676IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS,VOL.11,NO.6,NOVEMBER/DECEMBER2005Fig.6.Translation of the local model’sposition.Fig.7.Architecture of the multirate cutting simulationsystem.Fig.8.Parameters to compute the local model.。

相关文档
最新文档