Home

XCCurv: the 2D modeller User's Guide

image

Contents

1. press with LMB and drag to the chosen S release to exit Note that the dragging stage quit if S touches P or M MODIFY 37 e 0 Figure 10 1 One weight modify 10 3 2 Two Weight button This button allows the user to modify the active curve so that it passes over a point S by changing only two weights More precisely the user must select two control points P and P XCCurv shows a curve point S and a point M S is the curve point that will be moved to S while M represents the curve point S if the weights associated with the two selected control points were zeroes Now the user can set S to be in the triangle P P M see fig 10 2 XCCurv also shows the line through S and M If the user chooses S in the triangle but also on SM the curve will be modified to be simmetry preserving 2 gyrum eR nd e Figure 10 2 Two weights modify 38 TRANSFORMATION BUTTONS mouse click on a CP P with CMB click on a CP P with CMB press on a point inside the P P M triangle with LMB and drag to the chosen S released to exit de ol 10 3 3 One CP button This button allows the user to modify the active curve so that it passes over a point S by changing only one control point More precisely the user must select a curve point S XCCurv finds the control point P nearest to S and shows the line through S and the control point The user must set S to be on this line Mou
2. 2 2 2222 CE onen 34 10 1 3 Remove button an patea e Totara nen 34 10 1 4 Refine button 2 2 2 2 CE Emm 34 10 2 Control Point buttons lll 34 10 2 1 Insert button 2 2 oll 34 10 2 2 Add button so re Regex du ea 35 10 2 3 Move button a 35 10 2 4 Delete button 2 2 EC Emm 36 10 2 5 Weight button 2 22 22mm 36 10 3 Geometric buttons len 36 10 3 1 One Weight button 2 2 2 22 mn nn 36 10 3 2 Two Weight button 2 2222 22m 37 10 3 3 One EP button 2 4 50 3 u Sed a a aa Rs 38 10 34 Local Dutton a ook a2 2 a ae EE 38 LIST OF FIGURES 10 4 Transformation buttons 10 4 1 Translation button 10 4 2 Scaling button 10 4 3 Rotation button 11 Functions buttons 11 1 RB Spline button 2 2 2 2 11 2 X Ci t and Y C t buttons 11 3 We Dubai 6 306 292 225084 11 4 X Ci t and Y Ca t buttons 11 5 Slope button 11 6 Curvature button 11 7 C y button 22 22 Se a ea 11 8 Arc test button 11 9 Int C t button as Be hoe 11 10Wavelet button 12 Data file formats 12 1 NURBS curve2D 12 2 Interpolation Approximation points 12 3 Control Points 12 4 IGES entity no 126 NURBS curve 2D List of Figures Bibliography ii 38 39 40 40 A1 Al 41 41 41 42 42 42 42 42 43 45 45 46 46 46 49 51 accuru U
3. 5P 0 000000E 00 3 000000E 01 3 000000E 01 0 000000E 00 5P 3 000000E 01 2 775558E 17 0 000000E 00 3 000000E 01 5P 3 000000E 01 0 000000E 00 2 775558E 17 3 000000E 01 5P 0 000000E 00 3 000000E 01 3 000000E 01 0 000000E 00 5P 3 000000E 01 2 775558E 17 0 000000E 00 3 000000E 01 5P 3 000000E 01 0 000000E 00 2 775558E 17 3 000000E 01 5P 0 000000E 00 0 000000E 00 1 000000E 00 0 000000E 00 5P 0 000000E 00 1 000000E 00 5P T 1G 5D 6P 42 T ONOONBPWNRPOATSLA FPRPRPWWWWWWWWWWNNNNNNNNNNPFPRPRPKBP A Hr FPNRPFOWOANDABWNHROWHKOANDOBRWNHRFPDTHOANDOATAPWNHROYO AT accuru USER S GUIDE List of Figures 2 1 Main Window 4 2 2 24 2 He Rem eR S 3 9X Params Area anne A Aa VE Ier es 7 4 1 Configuration Window 2 20 4 9 Bel Option Aredia cce Ree kp bue ok Bea RT E ns 11 5 2 Help Window 2 2o IRR ome Sun ee en 12 6 1 File Request Window cens 13 7 1 Shape Approximation Window 16 7 2 Interpolation Window lens 18 7 3 Norm Approximation Window 22 9 1 Reparametrization Window 29 10 1 One weight modify nn nn 37 10 2 Two weights modify lees 37 10 3 Tranformation Window 7 4 39 accuru USER S GUIDE Bibliography BBB87 R H Bartels J C Beatty B A Barsky An introduction to splines for use in computer graphics and geometric modelling Morgan Kauf man publish
4. the algorithms implemented in XCCurv are as general as possi ble in order to be applied in all the cases that the user may require This could limit the efficiency of the system For example the calculation of the B spline functions the basis of the space of the polynomial spline exploits the well known recurrence formula due to C de Boor DEB78 In CAD systems on the other hand algorithms are used that make the calculation of the B splines as long as they are of low degree through the conversion 2 WHAT IS XCCurv of each span into the power basis and the use of the Horner method Additionally while in CAD system circle curve or circle arc curve etc are defined as being primitive XCCurv provides the instruments for the cre ation of these curves while waiting for the users to have the basic knowledge that will allow them to be constructed The code is written in ANSI C language and can be executed on various types of workstation or PC running a Unix operating system with Xwin dow In order to make the system portable it was decided to use a Graphic User Interface made with ztools library XTOOLS00 provided with this package accuru USER S GUIDE CHAPTER 2 How to work with XC Curv When XCCurv is set up it opens the window shown in fig 2 1 The Main NI
5. 01 7 067138E 03 0 000000E 00 6 038869E 01 1P 3 070671E 01 0 000000E 00 3 038869E 01 3 070671E 01 1P 0 000000E 00 3 886926E 03 3 070671E 01 0 000000E 00 1P 3 886926E 03 7 067138E 03 0 000000E 00 3 886926E 03 1P 2 929329E 01 0 000000E 00 3 038869E 01 2 929329E 01 1P 0 000000E 00 0 000000E 00 1 000000E 00 0 000000E 00 1P 0 000000E 00 1 000000E 00 1P 126 8 2 0 1 0 0 0 000000E 00 0 000000E 00 0 000000E 00 3P 2 500000E 01 2 500000E 01 5 000000E 01 5 000000E 01 3P 7 500000E 01 7 500000E 01 1 000000E 00 1 000000E 00 3P 1 000000E 00 1 000000E 00 7 071070E 01 1 000000E 00 3P 7 071070E 01 1 000000E 00 7 071070E 01 1 000000E 00 3P 7 071070E 01 1 000000E 00 2 775558E 17 6 003534E 01 3P 0 000000E 00 3 000000E 01 6 003534E 01 0 000000E 00 3P 3 000000E 01 3 003534E 01 0 000000E 00 3 000000E 01 3P 3 533569E 04 0 000000E 00 2 775558E 17 3 533569E 04 3P 0 000000E 00 3 000000E 01 3 533569E 04 0 000000E 00 3P 3 000000E 01 3 003534E 01 0 000000E 00 3 000000E 01 3P 6 003534E 01 0 000000E 00 2 775558E 17 6 003534E 01 3P 0 000000E 00 0 000000E 00 1 000000E 00 0 000000E 00 3P 0 000000E 00 1 000000E 00 3P 126 8 2 0 1 0 0 0 000000E 00 0 000000E 00 0 000000E 00 5P 2 500000E 01 2 500000E 01 5 000000E 01 5 000000E 01 5P 7 500000E 01 7 500000E 01 1 000000E 00 1 000000E 00 5P 1 000000E 00 1 000000E 00 7 071070E 01 1 000000E 00 5P 7 071070E 01 1 000000E 00 7 071070E 01 1 000000E 00 5P 7 071070E 01 1 000000E 00 2 775558E 17 3 000000E 01
6. Manual 2 choose an approximation Method e Least square e Constrained least square e Periodic least square 3 choose curve degree 4 choose a Parametrization strategy e Uniform 22 INTERPOLATION BUTTON AND IP FILE K Non approx Figure 7 3 Norm Approximation Window e Chord length e Centripetal e Exponential 5 choose Extended partition e Automatic e Manual 6 choose the number of knots 7 choose NURBS weights NEW CURVE 23 e Non rational e Manual The weights to associate to the approximation points can be e Equal This option sets all the weights to 1 non weighted approximation e Manual This option allows to input the weights by keyboard In the AP table in the Params sector the x y coordinate points are shown within all the weights to 1 click with LMB the weight to be changed and give the new value in the properly text box OK to confirm and Done to quit the input step Approximation methods e Least square approximation method Let Qi _ be the approximation points This method computes the NURBS curve O t so that the following expression is the mini mum value n Delle Qill IC rs 2 Clr 9 i 1 i 1 e Constrained least square approximation method In addition to satisfying the least square approximation this method constrains the curve to pass from the first and last given points that is Gne e Cm Qn e Periodic least square appro
7. a multiplicity greater than 1 In this case to elevate the multiplicity of a knot click on it with CMB The weights are set automatically to 1 To change their values you must use the Modify Weight button in the Options sector To summarise once we have given all the following information e control points CPs e degree g e knot partition A e weights optionally XCCurv can proceed to compute and graphically represent the curve 7 2 Interpolation button and IP file This button provides the creation of an interpolation curve starting from some given 2D points IP After these points have been given the window of fig 7 2 is shown and the user must 1 choose an interpolation Method e Lagrange interpolation e Hermite interpolation e Periodic interpolation 18 INTERPOLATION BUTTON AND IP FILE K Interpolation Figure 7 2 Interpolation Window e Rational cubic interpolation Ct with tension e Rational cubic interpolation C with tension 2 choose a Parametrization strategy e Uniform e Chord length e Centripetal e Exponential 3 Choose NURBS weights e Non rational e Manual We describe the available interpolation methods NEW CURVE 19 e Lagrange interpolation Let Qj 1 n be the interpolation points This method com putes the NURBS curve C t so that Cn Q i 1 n The degree of the curve must be given The knot partition will be computed automatically so that the Sch
8. button This option shows the graphs of the basis function for the NURBS space R Pm M A W to which the active curve belongs 11 2 X C t and Y C t buttons These options show the graphs of the components of the active curve The control polygons of these functions that have vertices amp 2 i 1 m K or i Yi i 1 m K are also shown The amp are the nodes and xj yj are the control point coordinates If the active curve has been created by interpolation or approximation the points ti xi o ti y where t are the parameter values associated to the interpolation or approximation points x y will be shown 11 3 W t button This option shows the graph of the weight function that is the denominator function of the rational active curve 11 4 X C1 t and Y C t buttons These options show the graphs of the first derivative functions of the curve component functions 42 INT C t BUTTON 11 5 Slope button This option shows the graph of the slope function v t defined by a t t Q v t Q 1 11 6 Curvature button This option shows the graph of the curvature function k t defined by Ke Ci t C7 t Co t CT t tem 13 11 7 C t button This option shows the graph of the function C t o L where L is the curve length This graph is useful to show the user whether the active curve is well parametrized or not In fact if a curve is well
9. 3 Lese niet don ens 14 PA A 14 parc M Stein E ath 14 I m ENT 14 7 2 1 Norm Approximation button and AP file 21 il CONTENTS 8 Edit 25 A E on 5 boe LR te a N a d Cay tied ire at wu 25 8 27 Delete 2 ee wih 2 2 A A EUR doe c Oe SUS 25 EG Select aisi a sera anne dy eod Ghee a era E 25 SUL C CODyu a5 Ras a run COUR uk MEOS on 25 8 90 UNIDO o a Bate a A Mas fe oT ead ah ale 26 8 6 REDO 4 2 hosed eae eM uh oe PA EE ee 26 9 Misc 27 9 1 Rational Cubic Tension 02 2 0004 27 9 27 Curve Lenght 5 omi esM Ga Re BEN eh Ge ee pt tes 27 9 3 Draw Points 4 26k a a a a voe d 27 04 ASPAS nsi ashe gh ad Wis eee oe eGo Ee Pode DS 27 915 US DI hk awe See ae odd Sek Ba ren dotada Gai Ht d s do ar Ee 28 9 0 Reyerse son 8 are De ERU b e ee A 28 9 7 J N zum Poe ak cy ee Be a wem PIE Seg O 28 9 8 Degree Elevation 2 2 a 28 9 9 Reparametrization rs 28 9 9 1 Linear rational button 30 9 9 2 Span button 30 9 9 3 METAN Dit s de at Resa erbe ne SR Hew ee 30 9 9 4 gt Root arc button iun auod RR ann a 30 9 9 5 Adaptive span button 31 9 9 6 Adaptive O t button 2 62 m Save EU E 31 9 9 7 Adaptive root arc button 0 31 9 10 Multi Resolution Analysis 0 o 31 10 Modify 33 10 T Knot buttons mes u au Sr ee od ho A A ke 33 10 1 1 Insert button 2 2 2 2 CE Emmen 33 10 1 2 Move button
10. HAPTER 7 New Curve This sector presents the three different curve creation modes provided by XCCurv Shape approximation from a set of 2D points Control Points CP Interpolation from a set of 2D points Interpolation Points IP Norm Approximation from a set of 2D points Approximation Points AP For each of these modes the user can input the 2D points using the mouse or the keyboard In this latter case the coordinate values must be digitized in the properly fields in the Params sector If the check box labelled by file is setted at on these points can be loaded from a data file 7 1 Shape Approximation After the input of the Control Points the window of fig 7 1 is shown where the user must 1 set the degree of the curve digit the degree in the text box 2 choose extended partition A The following choices are able e Equally spaced knots e Uniform knots e Periodic knots e Manual knots e Chord lenght parametrization knots We describe the possible choices for extended partitions in any case the knots tm and tx m 1 are set to the end interval domain points that is to 0 and 1 16 SHAPE APPROXIMATION HA BARES ER Extended partition Degree 1 gually spaced 3 E Unite 7 Periodic I Chord tenght 7 Manual Figure 7 1 Shape Approximation Window e Equally spaced and Periodic knots interior knots are set equally spaced in the 0 1 parametric do main Le
11. SER S GUIDE CHAPTER 1 What is XCCurv XCCurv is the 2D modeller of the XCModel system XCMODEL00 This program is self contained and executable from the zcmodel console window It is distributed with the archive xccurvdev tar gz development version and xccurvusr tar gz executable version Downloading and installation instructions are in XCMODELOO0 XCCurv is a system based on NURBS mathematics primitive for modelling 2D curves This interactive graphics system was designed bearing in mind two main objectives e to provide a development environment for the experimentation of new techniques and algorithms in the sector of geometric modelling e to provide a learning environment and a practical application of the theories of geometric modelling presented in many books and papers see references For these reasons XCCurv is very different from other 2D CAD systems on the market Apart from being based on NURBS it has general char acteristics not belonging to CAD systems allowing the user to provide all the data needed to define a curve such as knot partition weights type of parametrization while CAD systems remain more restrictive imposing methods that are considered efficient but are invariable For example XCCurv allows the user to choose the NURBS degree and this degree can have up to a maximum value of MAXG 20 in this release In CAD systems much lower degrees of spline are used at most cubic As a result
12. U eh A New Curve File Edit interp Shape Load Save Reset Delete Select Approx X by fiie import Export Copy Mise Modify Knot C Point Geom Transiat Scaling p Rotation EZ re cote tocar d Deg Ei Repar Weight Ii s ase Pi nS output Begee 3 CP 26 ae knot 30 PIAR 26 IE vee AP N knot lo Je x y w A 0000 7 0258 0 542 2 0 008 2 0263 0493 3 0 808 3 0359 0498 4 86000 4 0420 0437 5 0 848 5 0468 0153 y asal E a Functions Options E cune color AB Spine xecr rece wa xen v c2 X Axes Gra S 2 x HE Ste Curvature C Are test t VCH AS dac cUm Js lope HEH HEE Help IX Zoom Enable Keyb tl Figure 2 1 Main Window Window is partitioned in sectors that we have named e New Curve creates a curve from scrach this creation step starts by control points or by interpolation approximation points given inter actively or loading a file 4 WHAT TO DO WITH XCCurv File to load save a curve or its points and to import export a set of curves in IGES format Edit includes some useful function such as select a curve delete a curve etc Misc consists of a miscellanea collection of functions Modify contains the functions available to modify the active NURBS curve e Params is a large sector of the Main Window containing the definition parameters of the active curve e Functions consists of 12 buttons corresponding to 12 different fu
13. University of Bologna Department of Mathematics Piazza di Porta S Donato 5 40127 Bologna XCCurv the 2D modeller User s Guide Version 4 0 G CASCIOLA Department of Mathematics University of Bologna Bologna 2007 Abstract This report describes the XCCurv package This is a program for modelling free form 2D curves which is only based on NURBS Non Uniform Rational B Splines mathematics primitive G CASCIOLA Department of Mathematics University of Bologna P zza di Porta S Donato 5 Bologna Italy E mail casciola dm unibo it accuru USER S GUIDE Contents What is XCCurv How to work with XCCurv 2 1 What to do with XCCurv Params Curve Color Configuration and Quit 4 1 Curve Color menu 4 2 Configuration button 2 2 2 43 Quit button 2 2 2 2 22m Options Sel DIOS nr 5 3 P lygonal i ose bx Bide Grid x eee enu roS 5 4 BackGround Curves 5 5 Zoom Enable 5 6 Help vun ee PERDE ea 5 7 Input selector 0 File 6 1 Load button 6 2 Save button 2 22 2 2222er 6 3 Import button 6 4 Export button New Curve 7 1 Shape Approximation 7 2 Interpolation button and IP file Contents Pone Sues Rete 10 11 ERREUR 11 Vertice a attt 11 E lara teak a 11 IT 12 suu ud om fens Rhy des 12 Libr Yee mde dos 12 Rr as 12 1
14. active curve with another parameter using a linear rational reparametrization function that keeps the curve a NURBS too All the proposed techniques use a linear rational or a piecewise linear rational function to approximate the arc length parametrization function e f Wde by interpolation or uniform approximation For each chosen technique the following approximation modes are available e C interpolation e C uniform approximation 30 REPARAMETRIZATION e C interpolation The proposed techniques partition the parametric interval in different ways and consequently use a different piecewise reparametrization function 9 9 1 Linear rational button This option reparametrizes the whole active curve using a single linear rational function In this case the choise of C or C interpolation gives the same approximation function for y t 9 9 2 Span button This option performs piecewise reparametrization of the active curve after splitting the parametric domain at the knots 9 9 3 C t button This option performs a piecewise reparametrization of the active curve after splitting the parametric domain at the points where the y t function e f Nedu changes convexity concavity Because a linear rational function is always convex concave this option allows the user to approximate the y t shape 9 9 4 Root arc button This option performs a piecewise reparametrization of the active curve after splitting the parametric
15. amely the degree the number of knots in the extended partition the number of control points and if the curve was generated by interpolating or approximating data points the number of these informations Two tables show the knot values the con trol points coordinates within their weights or in alternative the interpola tion approximation point coordinates It is also graphically represented the knot partition These information are not only useful to be inspected as output parameters but overall to be modified and then change the shape of the curve as input parameters this is the case when the input has been chosen to be given by keyboard when it is the text boxes under the tables the OK and Done buttons are able oS output knot re IPP 6 dws aP 8 890 x Y lw Jo 8 794 0 325 1 080 8 884 amp 872 7 888 0265 8725 7 088 8 884 0 760 7 880 0 793 1 008 7 00 1 0068 Figure 3 1 Params Area accuru USER S GUIDE CHAPTER 4 Curve Color Configuration and Quit 4 1 Curve Color menu By clicking on a color with LMB this menu allows us to set the color for the curve that will be modelled more precisely this will be the color of the curve when it will be no more the active curve In fact we remember that when a curve is active its color is white If the user does not set a color the system automatically uses the next color in the menu for the curve 4 2 Configuration button This button opens
16. d The data files created or used by XCCurv are stored in the directory xcmodel curves2d as default The character in the following is a comment to the data in the file 12 1 NURBS curve 2D The following example file is xcnode1 curves2d c9p db The db extension identifies a NURBS entity FILENAME c9p db the curve file name DEGREE introduces the curve degree 2 curve degree N C P introduces the Number of Control Points 9 number of control poins N KNOTS introduces the Number of Knots 12 number of knots COORD C P X Y W introduces the CPs coord and weight 2 775558e 17 3 000000e 01 1 000000e 00 X Y W values 3 000000e 01 3 000000e 01 7 071070e 01 3 000000e 01 2 775558e 17 1 000000e 00 3 000000e 01 3 000000e 01 7 071070e 01 2 775558e 17 3 000000e 01 1 000000e 00 KNOTS introduces the knot vector 0 000000e 00 knot values in not decrescent order 0 000000e 00 1 000000e 00 1 000000e 00 46 IGES ENTITY NO 126 NURBS CURVE 2D 12 2 Interpolation Approximation points The following example file is xcmodel curves2d fgo ip The ip extension identifies a list of points FILENAME fgo ip the file name N P 18 introduces the Number of Points and the value 0 030516 0 373239 X Y point coordinates 0 098592 0 295775 0 105634 0 316901 0 037559 0 373239 0 021127 0 377934 12 3 Control Points The following example file is xcmodel curves2d spiral cp The cp ex tension identifies a list of con
17. domain at the zeroes of the arc test function a t o AICI po where L is the curve length L Jo C u du A well parametrized curve in the arc length sense results in a t 0 Vt Splitting the reparametrization at the a t zeroes means reparametrizing the curve only where necessary The following three techniques called Adaptive approximate the arc length parametrization function y t adaptively up to a given tolerance The first step is to compute an approximate linear rational function over the whole parametric domain If tolerance is not reached the parametric interval is divided into two intervals and so on Misc 31 9 9 5 Adaptive span button This option divides the interval in correspondence with a knot Otherwise it splits the interval in half if it does not contain knots 9 9 6 Adaptive C t button This option divides the interval into two intervals to respect the concave convex behaviours of the C t function Otherwise it splits the interval in half if the C t function is already concave or convex but tolerance has not been reached 9 9 7 Adaptive root arc button This option divides the interval into two intervals to respect the roots of the a t function Otherwise it splits the interval in half if it does not contain other a t roots 9 10 Multi Resolution Analysis This is an interesting facility of XACCurv Its implementation is prototypal and for this reason i
18. e chosen point as one of the control MODIFY 35 points This procedure does not modify the curve shape but only its analytical representation Mouse click on chosen polygonal point with LMB Keyb digit its coordinates and weight values OK to confirm each value Done to exit gt gt Note that in the Keyboard case if the new coordinate point does not belong to the polygonal a message appear and the user must digit others coordinate points 10 2 2 Add button This button allows the user to add new control points This procedure modifies the curve shape Mouse to select where to add a CP click on a polygonal segment with CMB click on new position with LMB click with CMB on an existing CP to elevate its multiplicity clicking with LMB without a previous segment selection inserts a CP as first gt gt Keyb to select the position at which to add a CP click on CP table with LMB digit its coordinates and weight values OK to confirm each value Done to exit 10 2 3 Move button This button allows the user to move a control point This procedure modifies the control polygon and therefore the curve shape Mouse press on chosen CP with LMB and drag to the new position release to exit Keyb click on a CP with LMB in CP table digit its coordinate values OK to confirm Done to exit L4 36 GEOMETRIC BUTTONS 10 2 4 Delete button This button allow
19. ers 1987 DEB78 C deBoor A practical guide to splines Springer Verlag 1978 FAR93 G Farin Curves and surfaces for CAGD a practical guide III Edi tion Academic press 1993 FINK94 A F Finkelstein D H Salesin Multiresolution Curves Computer Graphics 1994 HOLA93 J Hoschek D Lasser Fundamentals of Computer Aided Geomet ric Design A K Peters 1993 PITI95 L Piegl W Tiller The NURBS book Springer Verlag 1995 ROAD90 D F Rogers J A Adams Mathematical elements for computer graphics II McGraw Hill 1990 YAM88 F Yamaguchi Curves and Surfaces in Computer Aided Geometric Design Springer 1988 ZEID91 I Zeid CAD CAM Theory and Practice McGraw Hill Inc 1991 XCMODELO0 G Casciola remodel a system to model and render NURBS curves and surfaces User s Guide Version 1 0 Progetto MURST Analisi Numerica Metodi e Software Matematico Ferrara 2000 http www dm unibo it casciola html xcmodel html XTOOLS00 S Bonetti G Casciola rtools library Programming Guide Version 2 0 2000 http www dm unibo it casciola html xcmodel html
20. erval click on it with LMB repeat for other knot intervals RMB to stop e keyb to select a knot interval inserts a value belonging to the desired interval or selects directly the left interval knot in the knot list Done to exit 9 5 Split This option allows the user to split the active curve into two curves e To split click on the chosen curve point with LMB 9 6 Reverse This button allows for reverse the parametrically definition of the active curve In other words the zero parameter value will be now associated to the last curve point and the one parameter value to the first 9 7 Join Select the first curve with LMB then the second curve to join with LMB the first point of the second curve will be joined to the last point of the first curve 9 8 Degree Elevation This button allows the user to make a degree elevation of the curve by 1 degree This procedure does not modify the curve shape but only its analytical representation To make a degree elevation greater than 1 click on the button more than once 9 9 Reparametrization This button opens the following menu from which it is possible to choose different reparametrization techniques e Linear rational e Span e C Misc 29 e Root arc Adaptive span Adaptive C t Adaptive root arc a Reparametrize D P m m Ei Figure 9 1 Reparametrization Window These consist in changing the current parameter of the
21. have multiplicity 2 The exterior knots are coincident with the end interval points e Periodic interpolation Let Qiii be the interpolation points This method computes 20 INTERPOLATION BUTTON AND IP FILE the NURBS curve C t so that The interior knots are chosen to coincide with the interpolation param eter values i7 The exterior knots are chosen to satisfy the periodic conditions automatically e Rational cubic C interpolation Let tQ wu and 0 1 be the interpolation points and w i 1 n 1 be tension parameters associated with each pair tQ 10 1 of points This option allows the following choices Manual Derivative Akima that are the same already seen in the Hermite interpolation case This method computes the interpolation NURBS curve cubic over quadratic with the property of being globally C and for w oo Vi to converge to the polygonal defined by the interpolation points If w 1 Vi it is the cubic Hermite interpolation curve Rational cubic C interpolation Let Q i 1 n and 0 where 4 bn 1 and j 20 i 2 n 1 be the interpolation points and w i 1 n 1 be tension parameters associated with each pair Qf Qf 1 of points This method computes the interpolation NURBS curve cubic over quadratic with the property of being globally C If w 1 Vi it is the cubic Hermite interpolation curve that we called F L Derivative After the choice of an in
22. inates that is every point is approximated to the nearest point on the grid The linked bar if the grid is active allows it to be doubled or halved ob taining a grid finer or coarser 12 INPUT SELECTOR 5 4 BackGround Curves This option ables unables the viewing of all the non active curves This is useful to better view the active curve and to speed up the interactive operation on the active curve 5 5 Zoom Enable This check box allows us the following facilities e Zoom In e Zoom Out e Reset Zoom In and Zoom Out respectively allow you to magnify and reduce the image curves in the Curves window and are actived respectively by the LMB and RMB clicking on the center of the region to magnify or reduce To reset the Curves window to 1 1 x 1 1 use the CMB 5 6 Help This check box is used to able unable the on line help of XCCurv For every selected operation this help guides the user on how to carry out the operation correctly insert points by clicking with LMB CMB to insert over an already inserted point AMB to stop Figure 5 2 Help Window 5 7 Input selector The Mouse and Keyboard check boxes are mutually exclusive If Mouse is chosen almost all the operations for data insertion will be carried out using the mouse whereas by choosing Keyboard these will be made using the keyboard accuru USER S GUIDE CHAPTER 6 File These buttons see the Main Window in fig 2 1 allow the use
23. nc tion graphs relative to the active curve Options allows the user to set some functions of XCCurv e Curve Color box allows the user to choose the color to represent a non active curve e Configuration and Quit bottons allows the user to configure XC Curv save this configuration for a next work session and quit XCCurv As soon as this window appears you will immediately see which actions are possible XC Curv provides help messages viewed along the bottom of the Main Window whenever the cursor moves over buttons bars text boxes etc Note that there is also an on line user s guide that can be abled by the check box Help and that guides the user step by step in his her actions As in any interactive graphics system XCCurv uses the keyboard and the mouse In this text we use the expression click on something with the LMB Left Mouse Button or the CMB Centre Mouse Button or the RMP Right Mouse Button when the user places the mouse pointer on something on the screen and presses and releases to click a mouse button This manual is organised to explain all the functionalities and how XCCurv works 2 1 What to do with XCCurv XCCurv is used to model and examine traditional and free form 2D curves It is possible to work simultaneously on several curves The selected active curve is visualized in white and it can be modelled or examined The non active curves are shown in the selected color from the Curve Color me
24. nu in which they were created There are several techniques for creating curves from interactive to automatic by interpolation and approximation methods How TO WORK WITH XCCurv 5 see New Curve sector XCCurv allows the user to examine the active curve parameters and some useful test functions such as slope curvature etc see Functions sector XCCurv allows the user to apply and analyze some modelling tools such as knot insertion knot removal knot refinement etc see Modify sector The active curve can be modified by working directly on its parameters or aided by the system giving some geometric constraints The active curve can be modified by geometric transformation such as translation scaling and rotation XCCurv allows the user to save the active curve in a file db extension such as save its control points and interpolation approximation points cp and ip extensions and to load a curve or other file previously saved It is also possible to import and ex port the modelled curves in the standard IGES format see File sector In this release there are a lot of new functions and greater graphics in teraction Of particular interest we underline the Multiresolution Analysis option implemented in a prototypal version that uses a multiresolution curve representation accuru USER S GUIDE CHAPTER 3 Params In the Params sector the numeric parameters that define the active curve are permanently shown and up date n
25. o confirm Done to exit Fed 34 CONTROL POINT BUTTONS 10 1 2 Move button This button allows the user to move one or more interior knots on the actual partition from their initial position to a new one This procedure modifies the curve shape Mouse press on a knot with LMB drag to new position then release click with RMB to confirm Keyb select a knot by clicking on it with LMB in the knot table digit its new value use Backspace to delete the old value OK to confirm Done to exit l l 10 1 3 Remove button This option tries to remove a knot from the actual knot partition without modifying the curve shape If this procedure is successful the effect will be a curve with a different analytical representation Mouse click on a knot with LMB click with RMB to confirm Keyb select a knot by clicking on it with LMB in the knot table OK to confirm Done to exit l 10 1 4 Refine button The knot partition wil be refined in the middle point of each knot interval will be insert a new knot 10 2 Control Point buttons These buttons allow the user to modify the control points and weights 10 2 1 Insert button This button performs the operation known as Inverse Knot Insertion This consists in the specification of a point on the control polygon XCCurv identifies a point on the parametric domain from which by knot insertion a new polygonal can be obtained having th
26. oenberg Whitney conditions are satisfied Exterior knots are coincident with the end interval points e Hermite interpolation Let Qf i 1 n and 0 4 be the interpolation points This method computes the NURBS curve C t so that CeO i 1 n L 0 4 This option allows the following choices F L Derivative This method in addition to the interpolation points Q9 i 1 n interpolates the first derivative at the end interval points that is Qt and QU 44 1 and 0 for i 2 n 1 must be given The interpolation curve is of degree 3 The inte rior knots are chosen to coincide with the interpolation parameter values 7 the exterior knots are coincident with the end interval points Manual Derivative In addition to the interpolation points QU i 1 n the Max Order d 1 2 3 4 must be given and then the informa tion Qf i 2 1 n and 2 1 d The interpolation curve is of degree 2d 1 The interior knots are chosen to coincide with the interpolation parameter values 7 and are of multiplicity d 1 The exterior knots are coincident with the end interval points Akima Start from the given points Q9 i 1 n This option com putes the points Ql i 1 n with Akima technique Then an interpolation of all this information with a curve of degree 3 is performed The interior knots are chosen to coincide with the interpolation parameter values 7 and
27. parametrized in the arc length sense then Ic l L and therefore C t L must zero In addition the minimum and maximum function values are shown 11 8 Arc test button This option shows the graph of the function a t defined by _ Jo Cu du L a t t te 0 1 where L is the curve length L o C u du This graph is useful to show the user whether the active curve is well parametrized or not In fact if a curve is well parametrized in the arc length sense then a t must be Zero In addition the minimum and maximum function values are shown 11 9 Int C t button This option shows the graph of the function y t defined by e f Nedu FUNCTIONS BUTTONS 43 This graph is useful to show the user whether the active curve is well parametrized or not In fact if a curve is well parametrized in the arc length sense then y t approximates a linear function y t is the analytic reparametrization function When you choose to reparametrize the active curve you can compare the y t function with the reparametrization func tion that XCCurv uses 11 10 Wavelet button This option shows the graphs of the wavelet functions associated to the RB spline functions this button is able when the active curve allows us to perform a MultiResolution Analysis accuru USER S GUIDE CHAPTER 12 Data file formats In this section the sintax of each file format used by XCCurv is given and explaine
28. r to to read write from on the data files for the NURBS curves ge eum FOB de 7epede 222 4b amo fesiab amol fesiab amo cab homersandro tesi kcmogel 2 cumnesed appr_nora db Directory name Figure 6 1 File Request Window 14 EXPORT BUTTON 6 1 Load button This button allows a file with the extension db to be loaded The files with this extension contain all the data needed to define a 2D NURBS curve in a standard format see Data file formats section The curve defined by this type of data file will be visualized and will be the active curve 6 2 Save button This button allows all the definition data for a 2D NURBS curve active in a file with a db extension to be saved see db format If the active curve has been created by a process of interpolation or approximation of data this button allows the interpolation or approximation points used to be saved in a file with an ip extension It is also possible to save the control points of the active curve in a file with the cp extension 6 3 Import button This button allows the user to load a file in IGES standard format see Data file format section containing a set of NURBS 2D curves IGES entity no 126 6 4 Export button This button allows the user to save a set of curves selected with LMB from the modelled curves or all the curves clicking CMB in a file in IGES standard format see Data file format section accuru USER S GUIDE C
29. ransformation OK to confirm ESA Transformations 28 Goe X Center 2 000 y G8 angie Degree cos a 7 808 sima 8 080 Rotation Figure 10 3 Tranformation Window 40 TRANSFORMATION BUTTONS 10 4 2 Scaling button This button allows the user to scale the active curve Mouse Keyb gt gt l select with CMB the control points to be scaled nobody selection means all control points press with LMB to define the center of scale drag to define the scaling factors released to exit digit the coordinates of the center of scale in the Window Transformation digit the scaling factors OK to confirm 10 43 Rotation button Mouse Keyb gt gt gt l l select with CMB the control points to be rotated nobody selection means all control points press with LMB to define the center of rotation drag to define the angle of rotation released to exit digit coordinates of the center of rotation in the Window Transformation digit the angle in degree OK to confirm accuru USER S GUIDE CHAPTER 11 Functions buttons These buttons provide the visualization of some different functions These are very useful when you need to inspect the analytic and shape character istics of the active curve XCCurv is able to show all these functions contemporarily and to resize each function window to better understand the function details 11 1 RB Spline
30. s abled only for an active curve of degree 3 with uniform knot partition and with 2 3 control points with k an integer value This option uses a multiresolution curve representation based on wavelets that conveniently supports a variety of operations smoothing a curve edit ing the overall form of a curve while preserving its details and so on This implementation supports continuous level of smoothing When the bar and the text box are abled they have position value k the initial resolution level of the curve changing this position value we smooth or refine the curve mantaining its details see FINK94 accuru USER S GUIDE CHAPTER 10 Modify This sector provides the capability to modify the active NURBS curve by e Knot partition e Control Points e Geometric constraints e Geometric Transformations By Modify we mean variation of the curve parameters Sometimes this involves a shape curve variation and sometimes only a different analytical representation 10 1 Knot buttons 10 1 1 Insert button This button allows the user to make a knot insertion of 1 or more knots in the actual knot partition This procedure does not modify the shape of the curve but only its analytical representation Mouse click on chosen position inside parametric interval with LMB click CMB on an existing knot to elevate its multeplicity click with RMB to stop E4 Keyb digit new knot value in the properly text box OK t
31. s the user to delete a control point This procedure mod ifies the control polygon and therefore the curve shape Mouse click on chosen CP with LMB Keyb click on a CP with LMB in CP table OK to confirm Done to exit 10 2 5 Weight button This button allows the user to modify a weight value associated with a control point This procedure modifies the curve shape Mouse press on chosen CP with LMB and drag on the right to increase the weight value on the left to decrease the weight value release to exit Keyb click on chosen CP with LMB in CP table digit new weight value OK to confirm Done to exit bd 10 3 Geometric buttons These buttons allow the user to make some geometric modifications to the shape of the curve By Geometric modify we mean that it is possible to impose some geometric constraints such as passing over a given point 10 3 1 One Weight button This button allows the user to modify the active curve so that it passes over a point S by only changing a weight More precisely the user must select a curve point S and a point on the control polygon P Then he she must choose S on the straight segment M P see fig 10 1 where M is the analog of S when the weight associated to the control point P is zero mouse click on a curve point S with CMB click on a polygonal point P with CMB The line defined by S and P and the segment M P on this line will be shown
32. se press on a curve point S with LMB and drag to the new position released to exit XCCurv shows the line defined by S and P 10 3 4 Local button This button allows the user to select a curve segment and modify only the shape of this curve segment only This procedure consists in local knot refinement and in a control point movement Mouse click on a curve point with CMB to select the first segment end point click on a curve point with CMB to select the last segment end point press with LMB and drag to a new position released to exit XCCurv computes the parametric interval associated with this curve seg ment and inserts m 1 knots with m as the order curve inside this interval Now there is a basis function with this interval as support By moving the control point associated with this basis function only the curve segment will be modified 10 4 Transformation buttons These buttons allow the user to make the following geometric transforma tions MODIFY 39 10 4 1 Translation button This button allows the user to translate the active curve from its position to a new one or some its control points only Mouse select with CMB the control points to be translated nobody selection means all control points press with LMB to define the center of translation drag to define the translation vector released to exit Lodo Keyb digit the translation vector coordinates in the Window T
33. t K be the number of interior knots it holds K ncp m where ncp is the CP number and m is the curve order then t are given by i m 1 i m 1l K m exterior knots are defined by ti a b ti r 1 m 1 ti b ti k 1 4 i K m 2 K 2m where a b is the parametric domain 0 1 in this release Since interior knots are equally spaced we have the same extended partition both in Equally spaced and Periodic selections Uniform knots interior knots are equally spaced exterior knots are coincident with the end interval points t 0 0 i 1 m 1 ti 1 0 i K m 2 2m K Manual knots The extended partition can be setted by the user With the mouse he she can set all the knots except for tm and tK m 1 that are automatically set to be coincident with the end interval points with the keyboard he she can set all the knots NEW CURVE 17 Mouse click K 2m 2 times on the interval domain with LMB knot partition window Keyb digit all knot values that is K 2m values in the text box e Chord length parametrization knots interior knots are chosen so that tig ti E ce IP Pj illa ti 2 tig en Er Palo where P are the curve CPs exterior knots are coincident with the end interval points Note that all automatic extended partitions have interior knots with a multiplicity to 1 It is only possible to set knots manually with
34. terpolation method the user must choose the parametrization strategy that is the rule to set the interpolation parameter values 7 XCCurv provides four strategies e Chord length parametrization Sets the 7 parameters in the interval 0 1 so that TiTi Qi Qill2 Tia Tit1 Qis2 Qisa ll e Uniform parametrization Sets the 7 parameters equally spaced in the interval 0 1 NEW CURVE 21 e Centripetal parametrization Sets the 7 parameters in the interval 0 1 so that Ti 2 Ti 1 ARI Qi Qill Qi 2 Qi lla e Exponential parametrization Sets the 7 parameters in the interval 0 1 so that Ti 1 Ti lQi 1 Qill2 Ti 2 Ti 1 Qi Rizilla Finally the user must set the NURBS weights to define the NURBS space Q with a gt 0 e Non Rational Each weight is set to 1 Thus the NURBS space is a non rational spline space e Manual This input can be performed with the keyboard only For each weight digit its value in the properly text box Remember that the same number of weights must be set as the number of the interpolation points 7 2 1 Norm Approximation button and AP file This button allows the computation of a least square weighted approxima tion curve starting from some given 2D points AP After these points have been given the window of fig 7 3 is shown and the user must 1 choose the values to weight the approximation points e Equal e
35. the end interval points The final step is to define the NURBS space by giving the NURBS weights Non Rational Each weight is set to 1 Thus the NURBS space is a non rational spline space Manual This input can be performed with the keyboard only digit its value in the properly text box Remember that the same number of weights must be set as the number of the approximation points accuru USER S GUIDE CHAPTER 8 Edit This sector allows the user to manage the curve environment by classic functions as 8 1 Reset This button resets XC Curv If the curves have not been saved they will be lost 8 2 Delete This option allows the user to delete the active curve After this operation no curve will be active Proceed immediatly to select a curve to be active or create a new curve 8 3 Select XCCurv allows the user to model up to MAXC curves at the same time 100 in this release One of these must be selected as active appearing in white All the operations that XCCurv provides are only able for the active curve To select a curve as being active click on one CP of a curve with LMB and click with RMB to confirm Note that the last curve created or loaded by a file is set active 8 4 Copy This option allows the user to duplicate the active curve The two curves are one over the other and only moving the last can be appreciated the duplication effect 26 REDO 8 5 UnDo This option allows the user to return
36. the following Configuration Window see fig 4 1 from which is possible to change the resolution or better to choose the resolution used from the graphics display so that XCCurv can be properly used In EA 29 Resolution 3 8066808 E 7824x768 3 7288x1024 Figure 4 1 Configuration Window this window are able the Load and Default buttons that allow the user 10 QUIT BUTTON respectively to set the state of each check point check box function window dimensions and the values in all the text boxes of XCCurv by loading a configuration file or by some default values It is also possible to save the current state of all these objects in a configuration file using the Save button 4 3 Quit button This button allows the user to quit XCCurv accuru USER S GUIDE CHAPTER 5 Options This sector allows the user to choose some functions of XCCurv The check boxes indicate the selection of a yes no option Options Dx Aves Gna el E IX Polygonal K BackGround C Hep X Zoom Enable Figure 5 1 Option Area 5 1 Axes This option ables unables the drawing of the coordinate axes in the Curves window 5 2 Polygonal This option ables unables the viewing of the control polygon of the modelled curves 5 3 Grid This option allows the user to able unable a reference grid in the Curves window If this is abled every operation following it will be carried out in a system of discrete coord
37. to the curve situation previous up to the latest 16 modifications 8 6 ReDo This option allows the user to repeat the latest modifications eliminated with UnDo accuru USER S GUIDE CHAPTER 9 Misc This sector presents a miscellanea collection of useful modelling functions 9 1 Rational Cubic Tension This button refers to the two methods of interpolation called Rational Cu bic C and Rational Cubic C For a curve created with these interpolation methods this button is abled and provides to change the length of the curve mantaining the interpolation This is realized by using some tension param eters with local or global effect To change the tension of the curve between two interpolation points click with CMB on these two points Press LMB and drag on the right or on the left respectively to increase or decrease the tension value 9 2 Curve Lenght Computes the length of the active curve 9 3 Draw Points XCCurv graphically represents the active curve using dots These dots cor respond to curve points with equally spaced parameter values This option is useful to test curve parametrization In fact if the curve is well parametrized these curve points will be equally spaced even on the curve To continue and redisplay the curve in the standard mode click with LMB 9 4 Span This button allows the user to visualize and match a knot interval with a curve span 28 REPARAMETRIZATION e mouse to select a knot int
38. trol points FILENAME spiral cp the file name N C P 10 introduces the Number of CPs and the value 0 000000 0 000000 1 000000 X Y W 2d coordinates and weight 0 000000 0 100000 1 105168 0 400000 0 300000 7 178994 0 400000 0 400000 13 317328 0 400000 0 400000 20 908569 0 400000 0 500000 26 867794 12 4 IGES entity no 126 NURBS curve 2D IGES is the first standard exchange format developed to address the concepts of communicating product data among dissimilar CAD system ZEID91 XCCurv being based exclusively on NURBS implements the entity no 126 only The foolowing example file is xcmodel curves2d three circ igs S 1 1H 1H 14Hthree circ igs G 1 38HXCMODEL ver 3 0 Universita di Bologna G 2 22Hformato IGES Nov 2001 32 38 6 308 15 1 000000E 00 2 2HMM 1 G 3 1 000000E 02 13H020507 225522 1 000000E 02 3 000000E 01 10 0 G 4 13H020507 225522 G 5 126 1 0 1 0 0 0 000000000D 1 126 0 5 14 0 OD 2 126 15 0 1 0 0 0 000000000D 3 DATA FILE FORMATS 126 o 5 14 0 OD 126 29 o 1 0 0 0 000000000D 126 o 5 14 0 OD 126 8 2 0 1 0 0 0 000000E 00 0 000000E 00 0 000000E 00 1P 2 500000E 01 2 500000E 01 5 000000E 01 5 000000E 01 1P 7 500000E 01 7 500000E 01 1 000000E 00 1 000000E 00 1P 1 000000E 00 1 000000E 00 7 071070E 01 1 000000E 00 1P 7 071070E 01 1 000000E 00 7 071070E 01 1 000000E 00 1P 7 071070E 01 1 000000E 00 3 038869E 01 2 929329E 01 1P 0 000000E 00 6 038869E 01 2 929329E 01 0 000000E 00 1P 6 038869E
39. ximation method In addition to satisfying the least square approximation this method constrains the curve to be periodic that is CH CT C Cm eon e CO2 qu Then the user must give the degree curve and choose the parametrization strategy that is the rule to set the interpolation parameter values 7 XC Curv provides four strategies 24 INTERPOLATION BUTTON AND IP FILE Chord length parametrization This option sets the 7 parameters in the interval 0 1 so that Hrn _ lQia Qille Ti42 Ti41 Qi42 Qi llo Uniform parametrization This option sets the 7 parameters equally spaced within the interval 0 1 Centripetal parametrization This option sets the 7 parameters in the interval 0 1 so that AR Qi Qilla jM Ti 2 ad Qi Qille Exponential parametrization This option sets the 7 parameters in the interval 0 1 so that Tii Tio Qi Qilla Ti 2 Ti 1 Qi Rizilla Q with a gt 0 The next steps are the choice of the knot partition strategy The latter can e Manual The user can set the position of the interior knots by the mouse or the keyboard in the mouse case to quit the input click with RMB while in the keyboard case press the Done button Automatic In this case the number of knots must be given XCCurv sets the interior knots so that the least square approximation curve will be unique The exterior knots are set to coincide with

Download Pdf Manuals

image

Related Search

Related Contents

Model 2750 Downflow Service Manual  Euro-Pro EP187 User's Manual  Guia do usuário - Konica Minolta  取扱説明書 品番 LTD22V-EW2  Franke 212      7” Portable DVD Player Manual de Usuario  Method Detail  

Copyright © All rights reserved.
Failed to retrieve file