Has Modification Time in the Future Cmake
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Openscad User Manual (PDF)
OpenSCAD User Manual Contents 1 Introduction 1.1 Additional Resources 1.2 History 2 The OpenSCAD User Manual 3 The OpenSCAD Language Reference 4 Work in progress 5 Contents 6 Chapter 1 -- First Steps 6.1 Compiling and rendering our first model 6.2 See also 6.3 See also 6.3.1 There is no semicolon following the translate command 6.3.2 See Also 6.3.3 See Also 6.4 CGAL surfaces 6.5 CGAL grid only 6.6 The OpenCSG view 6.7 The Thrown Together View 6.8 See also 6.9 References 7 Chapter 2 -- The OpenSCAD User Interface 7.1 User Interface 7.1.1 Viewing area 7.1.2 Console window 7.1.3 Text editor 7.2 Interactive modification of the numerical value 7.3 View navigation 7.4 View setup 7.4.1 Render modes 7.4.1.1 OpenCSG (F9) 7.4.1.1.1 Implementation Details 7.4.1.2 CGAL (Surfaces and Grid, F10 and F11) 7.4.1.2.1 Implementation Details 7.4.2 View options 7.4.2.1 Show Edges (Ctrl+1) 7.4.2.2 Show Axes (Ctrl+2) 7.4.2.3 Show Crosshairs (Ctrl+3) 7.4.3 Animation 7.4.4 View alignment 7.5 Dodecahedron 7.6 Icosahedron 7.7 Half-pyramid 7.8 Bounding Box 7.9 Linear Extrude extended use examples 7.9.1 Linear Extrude with Scale as an interpolated function 7.9.2 Linear Extrude with Twist as an interpolated function 7.9.3 Linear Extrude with Twist and Scale as interpolated functions 7.10 Rocket 7.11 Horns 7.12 Strandbeest 7.13 Previous 7.14 Next 7.14.1 Command line usage 7.14.2 Export options 7.14.2.1 Camera and image output 7.14.3 Constants 7.14.4 Command to build required files 7.14.5 Processing all .scad files in a folder 7.14.6 Makefile example 7.14.6.1 Automatic -
Geometry & Computation for Interactive Simulation
Geometry & Computation for Interactive Simulation Jorg Peters (CISE University of Florida, USA), Dinesh Pai (University of British Columbia), Ulrich Reif (Technische Universitaet Darmstadt) Sep 24 – Sep 29, 2017 1 Overview The workshop advanced the state of the art in geometry and computation for interactive simulation by in- troducing to each other researchers from different branches of academia, research labs and industry. These researchers share the common goal of improving the interface between geometry and computation for physi- cal simulation – but approach it with differing emphasis, techniques and toolkits. A key issue for all partici- pants is to shorten process times and to improve the outcomes of the design-analysis cycle. That is, to more quickly optimize shape, structure and properties to achieve one or multiple design goals. Correspondingly, the challenges laid out covered a wide spectrum from hierarchical design and prediction of novel 3D printed materials, to multi-objective optimization minimizing fuel consumption of commercial airplanes, to creating training scenarios for minimally invasive surgery, to multi-point interactive force feedback for virtually plac- ing an engine into a restricted cavity. These challenges map to challenges in the underlying areas of geometry processing, computational geometry, geometric design, formulation of simulation models, isogeometric and higher-order isoparametric design with splines and meshingless approaches, to real-time computation for interactive surgical force-feedback simulation. The workshop was highly succesful in presenting and con- trasting this rich set of techniques. And it generated recommendations for educating future generation of researchers in geometry and computation for interactive simulation (see outcomes). The lower than usual number of participants (due to a second series of earth quakes just before the meeting) allowed for increased length of individual presentations, so as to discuss topics and ideas at length, and to address basics theory. -
An Adaptable and Extensible Geometry Kernel
An Adaptable and Extensible Geometry Kernel ¾ ¿ Susan Hert ½ , Michael Hoffmann , Lutz Kettner , ½ Sylvain Pion , and Michael Seel ½ Max-Planck-Institut fur ¨ Informatik, Stuhlsatzenhausweg 85 66123 Saarbrucken, ¨ Germany. Email: [hert|seel]@mpi-sb.mpg.de. ¾ Institute for Theoretical Computer Science, ETH Zurich, CH-8092 Zurich, Switzerland. Email: [email protected]. ¿ University of North Carolina at Chapel Hill, USA. Email: [email protected]. INRIA, Sophia Antipolis - France. Email: [email protected]. Abstract. Geometric algorithms are based on geometric objects such as points, lines and circles. The term kernel refers to a collection of representations for constant- size geometric objects and operations on these representations. This paper describes how such a geometry kernel can be designed and implemented in C++, having spe- cial emphasis on adaptability, extensibility and efficiency. We achieve these goals fol- lowing the generic programming paradigm and using templates as our tools. These ideas are realized and tested in CGAL [10], the Computational Geometry Algorithms Library. Keywords: Computational geometry, library design, generic programming. 1 Introduction Geometric algorithms that manipulate constant-size objects such as circles, lines, and points are usually described independent of any particular representation of the ob- jects. It is assumed that these objects have certain operations defined on them and that simple predicates exist that can be used, for example, to compare two objects or to determine their relative position. Algorithms are described in this way because all representations are equally valid as far as the correctness of an algorithm is concerned. Also, algorithms can be more concisely described and are more easily seen as being applicable in many settings when they are described in this more generic way. -
Openscad User Manual/Print Version Table of Contents Introduction First
OpenSCAD User Manual/Print version Table of Contents 1. Introduction 2. First Steps 3. The OpenSCAD User Interface 4. The OpenSCAD Language 1. General 2. Mathematical Operators 3. Mathematical Functions 4. String Functions 5. Primitive Solids 6. Transformations 7. Conditional and Iterator Functions 8. CSG Modelling 9. Modifier Characters 10. Modules 11. Include Statement 12. Other Language Feature 5. Using the 2D Subsystem 1. 2D Primitives 2. 3D to 2D Projection 3. 2D to 2D Extrusion 4. DXF Extrusion 5. Other 2D formats 6. STL Import and Export 1. STL Import 2. STL Export 7. Commented Example Projects 8. Using OpenSCAD in a command line environment 9. Building OpenSCAD from Sources 1. Building on Linux/UNIX 2. Cross-compiling for Windows on Linux or Mac OS X 3. Building on Windows 4. Building on Mac OS X 10. Libraries 11. Glossary 12. Index Introduction OpenSCAD is a software for creating solid 3D CAD objects. It is free software (http://www.gnu.org/philosophy/free-sw.html) and available for GNU/Linux (http://www.gnu.org/) , MS Windows and Apple OS X. Unlike most free software for creating 3D models (such as the well-known application Blender (http://www.blender.org/) ), OpenSCAD does not focus on the artistic aspects of 3D modelling, but instead focuses on the CAD aspects. So it might be the application you are looking for when you are planning to create 3D models of machine parts, but probably is not what you are looking for when you are more interested in creating computer- animated movies. OpenSCAD is not an interactive modeller. -
Free Software for the Modelling and Simulation of a Mini-UAV an Analysis
Mathematics and Computers in Science and Industry Free Software for the Modelling and Simulation of a mini-UAV An Analysis Tomáš Vogeltanz, Roman Jašek Department of Informatics and Artificial Intelligence Tomas Bata University in Zlín, Faculty of Applied Informatics nám. T.G. Masaryka 5555, 760 01 Zlín, CZECH REPUBLIC [email protected], [email protected] Abstract—This paper presents an analysis of free software Current standards for handling qualities apply to only which can be used for the modelling and simulation of a mini- piloted aircraft and there are no specific standards for UAV UAV (Unmanned Aerial Vehicle). Every UAV design, handling qualities. Relevant article discussing dynamic stability construction, implementation and test is unique and presents and handling qualities for small UAVs is [4]. [2] different challenges to engineers. Modelling and simulation software can decrease the time and costs needed to development Any UAV system depends on its mission and range, of any UAV. First part of paper is about general information of however, most UAV systems include: airframe and propulsion the UAV. The fundamentals of airplane flight mechanics are systems, control systems and sensors to fly the UAV, sensors mentioned. The following section briefly describes the modelling to collect information, launch and recovery systems, data links and simulation of the UAV and a flight dynamics model. The to get collected information from the UAV and send main section summarizes free software for the modelling and commands to it, and a ground control station. [3] [5] simulation of the UAV. There is described the following software: Digital Datcom, JSBSim, FlightGear, and OpenEaagles. -
Soloud Audio Engine
SoLoud Audio Engine Jari Komppa May 21, 2014 Contents 1 Introduction 2 1.1 How Easy? ..................................... 2 1.2 How Free? ..................................... 2 1.3 How Powerful? ................................... 3 1.4 There’s a Catch, Right? .............................. 3 2 Legal 4 2.1 SoLoud Proper ................................... 4 2.2 OGG Support ................................... 4 2.3 Speech Synthesizer ................................ 4 2.4 Fast Fourier Transform (FFT) ........................... 5 2.5 Sfxr ........................................ 5 2.6 Libmodplug .................................... 6 3 Quick Start 7 3.1 Download SoLoud ................................. 7 3.2 Add files to your project ............................. 7 3.3 Include files .................................... 7 3.4 Variables ..................................... 7 3.5 Initialize SoLoud .................................. 7 3.6 Set up sound sources ............................... 8 3.7 Play sounds .................................... 8 3.8 Take control of the sound ............................. 8 3.9 Cleanup ...................................... 8 3.10 Enjoy ....................................... 8 4 Premake 9 5 Concepts 10 5.1 Back end ..................................... 10 5.2 Channel ...................................... 10 5.3 Stream ...................................... 10 5.4 Clipping ...................................... 10 5.5 Sample ...................................... 11 5.6 Sample Rate ................................... -
New Approaches to Protein Docking
New approaches to protein docking Dissertation zur Erlangung des Grades Doktor der Ingenieurwissenschaften (Dr.-Ing.) der Naturwissenschaftlich-Technischen Fakult¨at I der Universit¨at des Saarlandes von Oliver Kohlbacher Saarbr¨ucken 12. Januar 2001 Datum des Kolloquiums: 12. Januar 2000 Dekan der technischen Fakult¨at: Professor Dr. Rainer Schulze-Pillot-Ziemen Gutachter: Professor Dr. Hans-Peter Lenhof, Universit¨at des Saarlandes, Saarbr¨ucken Professor Dr. Kurt Mehlhorn, MPI f¨ur Informatik, Saarbr¨ucken 2 Á ØÒ Ø ÑÓר Ü ÔÙØÖ Ö× ÒÓÛ × ÔÖØÐÝ Ò ÖÓ ¸ Ò ÔÖØÐÝ Ò ØÓ Ó ÑרÖݺ º º º ÓÐÓÝ × ×Ó ØÐ¸ Ò ÙØ Ù×Ùк Ì ØÖÓÙÐ ÛØ ÓÐÓÝ × ØØ¸ ÝÓÙ Ú ØÓ ÛÓÖ × ÓÐÓר¸ Ø³× ÓÖÒº ÓÙÖ ÜÔ ÖÑÒØ× Ø ÝÓÙ ØÖ ÝÖ× Ò ØÒ¸ ÓÒ ÒØ¸ Ø Ý Ó × Ó« Ò ÐÐ Ø ØÒ× ÓÙ ×ØÖØ ÓÚÖº ÁÒ Û ÓÙÖ ÓÛÒ ÛÓÖÐ׺ ÓÐÓ×Ø× ×ÖÚ ÐÓØ Ó ÓÖ Ò Ð ØÓ ×ÐÙ Ø ØÖÓÙº – Donald Knuth Acknowledgements The work on this thesis was carried out during the years 1996–2000 at the Max-Planck- Institut f¨ur Informatik in the group of Prof. Dr. Kurt Mehlhorn under the supervision of Prof. Dr. Hans-Peter Lenhof. Prof. Dr. Hans-Peter Lenhof kindled my interest in Bioinformatics and gave me the freedom to do research in those areas that fascinated me most. Our discussions, although sometimes heated, were always fruitful and forced me to get to the very bottom of many problems. The implementation of BALL is unthinkable without the help of all the people who con- tributed code and ideas. -
C++ 工程实践经验谈 陈硕 ([email protected])
1 C++ 工程实践经验谈 陈硕 ([email protected]) 最后更新 2012-4-20 版权声明 本作品采用“Creative Commons 署名 -非商业性使用 -禁止演绎 3.0 Unported 许可 协议 (cc by-nc-nd)”进行许可。http://creativecommons.org/licenses/by-nc-nd/3.0/ 内容一览 1 慎用匿名 namespace ............................... 3 2 不要重载全局 ::operator new() ........................ 7 3 采用有利于版本管理的代码格式 ......................... 14 4 二进制兼容性 ................................... 24 5 避免使用虚函数作为库的接口 .......................... 29 6 动态库的接口的推荐做法 ............................. 37 7 以 boost::function 和 boost:bind 取代虚函数 ................. 41 8 带符号整数的除法与余数 ............................. 48 9 用异或来交换变量是错误的 ........................... 56 10 在单元测试中 mock 系统调用 .......................... 63 11 iostream 的用途与局限 .............................. 68 12 值语义与数据抽象 ................................. 97 13 再探 std::string .................................. 115 14 用 STL algorithm 秒杀几道算法面试题 ..................... 123 15 C++ 编译链接模型精要 .............................. 132 16 Zero overhead 原则 ................................ 170 C++ 工程实践经验谈 by 陈硕 www.chenshuo.com 2 说明 这是我的博客上关于 C++ 的文章的合集。最新版可从陈硕博客的置顶文章中下 载,地址见本页右下角。本系列文章适用于 Linux 操作系统,x86/amd64 硬件平台, g++ 4.x 编译器,服务端开发。 http://blog.csdn.net/Solstice/archive/2011/02/24/6206154.aspx C++ 工程实践经验谈 by 陈硕 www.chenshuo.com 1 慎用匿名 namespace 3 1 慎用匿名 namespace 匿名 namespace (anonymous namespace 或称 unnamed namespace) 是 C++ 语 言的一项非常有用的功能,其主要目的是让该 namespace 中的成员(变量或函 数)具有独一无二的全局名称,避免名字碰撞 (name collisions)。一般在编写 .cpp 文件时,如果需要写一些小的 helper 函数,我们常常会放到匿名 namespace 里。 muduo 0.1.7 中的 muduo/base/Date.cc 和 muduo/base/Thread.cc 等处就用到了匿名 namespace。 我最近在工作中遇到并重新思考了这一问题,发现匿名 namespace 并不是多多 益善。 1.1 C 语言的 static 关键字的两种用法 C 语言的 static 关键字有两种用途: 1. 用于函数内部修饰变量,即函数内的静态变量。这种变量的生存期长于该函数, 使得函数具有一定的“状态”。使用静态变量的函数一般是不可重入的,也不是 线程安全的,比如 strtok(3)。 2. 用在文件级别(函数体之外),修饰变量或函数,表示该变量或函数只在本文件 可见,其他文件看不到也访问不到该变量或函数。专业的说法叫“具有 internal linkage”(简言之:不暴露给别的 translation unit)。 C 语言的这两种用法很明确,一般也不容易混淆。 1.2 C++ 语言的 static 关键字的四种用法 由于 C++ 引入了 class,在保持与 C 语言兼容的同时,static 关键字又有了两种 新用法: 3. -
Bullet Physics Simulation: Opencl GPU Acceleration of Rigid Body
Bullet Physics Simulation OpenCL GPU Acceleration of rigid body dynamics and collision detection Erwin Coumans Google Inc. Bullet Physics Example Browser ExampleBrowser --enable_experimental_opencl github.com/bulletphysics/bullet3 Premake GNU Make Windows OpenCL Devices Mac OSX OpenCL Devices OpenCL, SPIR-V, Vulkan Host and Device Host Device (GPU) CPU L2 cache PCI Global Host Express BUS Memory Global Device Memory GPU in a Nutshell Private Memory (registers) Shared Local Memory Compute Unit Shared Local Memory Shared Local Memory Global Device Memory Refactor or Rewrite from Scratch Physics API suitable Sequential to for GPU? Callbacks, Parallel Algorithms Extensibility etc. Array of Structures C++ virtuals, to templates to C99 Structure of Arrays Rigid Body Simulation Loop Refactor: GPU as Co-Processor pointers to indices AABBs & Transforms Constraint Rows Overlapping Pairs Forces, Accelerations CUDA GPU Pair Constraint Detection Solver 1st Rewrite: GPU Rigid Body Pipeline (~2008) Detect Compute Setup Solve Contact contact Contact constraint pairs points constraints s C 0 1 2 3 2 3 F C E B D 5 7 D B 1 4 A 8 10 11 A A B C D 1 1 3 3 12 13 14 15 4 2 2 4 CPU batch and GPU solve Uniform grid Spherical Voxelization (Slow PCI BUS dispatch) Parallel Primitives: Radix Sort, Prefix Scan GPUs love Fine Grain Parallelism Reordering Constraints C 2 3 B D 1 4 A A B C D A B C D 1 1 Batch 0 1 1 3 3 2 2 3 3 Batch 1 4 2 2 4 4 4 CPU sequential batch creation while( nIdxSrc ) { nIdxDst = 0; int nCurrentBatch = 0; for(int i=0; i<N_FLG/32; i++) flg[i] = -
Efficient Computation of Clipped Voronoi Diagram for Mesh Generation
Efficient Computation of Clipped Voronoi Diagram for Mesh Generation Dong-Ming Yana,b,c, Wenping Wanga, Bruno L´evyb, Yang Liub,d aDepartment of Computer Science, The University of Hong Kong, Pokfulam Road, Hong Kong bProject ALICE, INRIA/LORIA, Campus scientifique 615, rue du Jardin Botanique, 54600, Villers les Nancy, France cGeometric Modeling and Scientific Visualization Center, KAUST, Thuwal 23955-6900, Kingdom of Saudi Arabia dMicrosoft Research Asia, Building 2, No. 5 Danling Street, Haidian District, Beijing, 100800, P.R. China Abstract The Voronoi diagram is a fundamental geometric structure widely used in various fields, especially in computer graphics and geometry computing. For a set of points in a compact domain (i.e. a bounded and closed 2D region or a 3D volume), some Voronoi cells of their Voronoi diagram are infinite or partially outside of the domain, but in practice only the parts of the cells inside the domain are needed, as when computing the centroidal Voronoi tessellation. Such a Voronoi diagram confined to a compact domain is called a clipped Voronoi diagram. We present an efficient algorithm to compute the clipped Voronoi diagram for a set of sites with respect to a compact 2D region or a 3D volume. We also apply the proposed method to optimal mesh generation based on the centroidal Voronoi tessellation. Keywords: clipped Voronoi diagram, Delaunay triangulation, centroidal Voronoi tessellation, mesh generation. 1. Introduction computing the clipped Voronoi diagram with re- spect to a complicated input domain is a difficult The Voronoi diagram is a fundamental geometric problem and there is no efficient solution in the ex- structure which has numerous applications in var- isting literature. -
Cgalmesh: a Generic Framework for Delaunay Mesh Generation Clément Jamin, Pierre Alliez, Mariette Yvinec, Jean-Daniel Boissonnat
CGALmesh: a Generic Framework for Delaunay Mesh Generation Clément Jamin, Pierre Alliez, Mariette Yvinec, Jean-Daniel Boissonnat To cite this version: Clément Jamin, Pierre Alliez, Mariette Yvinec, Jean-Daniel Boissonnat. CGALmesh: a Generic Framework for Delaunay Mesh Generation. [Research Report] RR-8256, INRIA. 2014. hal- 00796052v2 HAL Id: hal-00796052 https://hal.inria.fr/hal-00796052v2 Submitted on 27 Jan 2014 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. CGALmesh: a Generic Framework for Delaunay Mesh Generation Clément Jamin, Pierre Alliez, Mariette Yvinec, Jean-Daniel Boissonnat RESEARCH REPORT N° 8256 January 2014 Project-Teams Geometrica ISSN 0249-6399 ISRN INRIA/RR--8256--FR+ENG CGALmesh: a Generic Framework for Delaunay Mesh Generation Clément Jamin∗y, Pierre Alliez∗, Mariette Yvinec∗, Jean-Daniel Boissonnat∗ Project-Teams Geometrica Research Report n° 8256 — January 2014 — 31 pages Abstract: CGALmesh is the mesh generation software package of the Computational Geometry Algorithm Library (CGAL). It generates isotropic simplicial meshes – surface triangular meshes or volume tetrahedral meshes – from input surfaces, 3D domains as well as 3D multi-domains, with or without sharp features. The underlying meshing algorithm relies on restricted Delaunay triangulations to approximate domains and surfaces, and on Delaunay refinement to ensure both approximation accuracy and mesh quality. -
Autotools: an Overview
Autotools: An Overview Autotools: An Overview Danny Robson 2014-09-24 2014-09-24 Autotools: An Overview Danny Robson Overview Autotools autoconf Autotools: An Overview automake pkg-config Final Words Danny Robson 2014-09-24 Autotools: An Overview About Me Performance systems programming About Me C, C++ Linux GNU autotools Self-taught. Slowly. caveat emptor About Me Ask lots of questions 2014-09-24 Autotools: An Overview Danny Robson Overview Performance systems programming Autotools C, C++ autoconf Linux automake GNU pkg-config autotools Final Words Self-taught. Slowly. caveat emptor Ask lots of questions Autotools: An Overview About Me Performance systems programming About Me C, C++ Linux GNU autotools Self-taught. Slowly. caveat emptor About Me Ask lots of questions 2014-09-24 Autotools: An Overview Danny Robson Overview Performance systems programming Autotools C, C++ autoconf Linux automake GNU pkg-config autotools Final Words Self-taught. Slowly. caveat emptor Ask lots of questions Autotools: An Overview About Me Performance systems programming About Me C, C++ Linux GNU autotools Self-taught. Slowly. caveat emptor About Me Ask lots of questions 2014-09-24 Autotools: An Overview Danny Robson Overview Performance systems programming Autotools C, C++ autoconf Linux automake GNU pkg-config autotools Final Words Self-taught. Slowly. caveat emptor Ask lots of questions Autotools: An Overview What You're In For 1 Overview What You're In For 2 Autotools 3 autoconf What You're In For 4 automake 5 pkg-config 2014-09-24 6 Final Words Autotools: