# SurfaceTransformPoints rotate suggestion for improvement

 Register Blogs Members List Search Today's Posts Mark Forums Read

 January 9, 2009, 03:28 Hello All, We found it very #1 Senior Member   Mark Couwenberg Join Date: Mar 2009 Location: Netherlands Posts: 130 Rep Power: 10 Sponsored Links Hello All, We found it very hard to understand the necessary input definition for rotating some surface object using the utility surfaceTransformPoints. One needs to supply 2 vectors which are used to construct a rotation matrix. We finally found how this matrix is constructed from these two vectors but were not able to find out how to relate the vectors to some kind of desired rotation. Therefore I modified the utility such that you only need to supply three angles of rotation (rotX, rotY, rotZ), which seems much more intuitively. The code now reads: argList::validOptions.insert("rotate", "'(degrX degrY degrZ)'"); ... ... if (args.options().found("rotate")) { using namespace mathematicalConstant; vector angles = (IStringStream(args.options()["rotate"])()); scalar phiX = pi*angles[0]/180; scalar phiY = pi*angles[1]/180; scalar phiZ = pi*angles[2]/180; tensor Rx (1, 0, 0, 0, Foam::cos(phiX), Foam::sin(phiX), 0, -Foam::sin(phiX), Foam::cos(phiX)); tensor Ry (Foam::cos(phiY), 0, -Foam::sin(phiY), 0, 1, 0, Foam::sin(phiY), 0, Foam::cos(phiY)); tensor Rz (Foam::cos(phiZ), Foam::sin(phiZ), 0, -Foam::sin(phiZ), Foam::cos(phiZ), 0, 0, 0, 1); tensor T (Rz & Ry & Rx); Info<< "Rotating points by " << T << endl; points = transform(T, points); } Attached the complete code. Hopefully it is usefull for people. Brgds, Mark

 Thread Tools Display Modes Linear Mode

 Posting Rules You may not post new threads You may not post replies You may not post attachments You may not edit your posts BB code is On Smilies are On [IMG] code is On HTML code is OffTrackbacks are On Pingbacks are On Refbacks are On Forum Rules

 Similar Threads Thread Thread Starter Forum Replies Last Post markc OpenFOAM Pre-Processing 1 August 13, 2011 08:47 richpaj OpenFOAM Bugs 2 October 9, 2008 22:14 Sri FLUENT 6 July 16, 2007 06:33 rolando OpenFOAM Bugs 3 May 15, 2007 12:49 amit Main CFD Forum 0 February 9, 2006 08:51