CSGRotation ignores rotation center argument in 2D

Issue #23 resolved
Simon Funke created an issue

It seems that CSGRotation ignores rotation center argument in 2D when using the Python version of the function

CSGRotation(std::shared_ptr< CSGGeometry > g, dolfin::Point v, double theta)

This example script demonstrates the problem:

from math import pi                                                                                                                                                                                                                            
from mshr import *                                                                                                                                                                                                                             
from dolfin import *                                                                                                                                                                                                                           

in_vessel = Rectangle(Point(-0.5, 0), Point(0.5, 10))                                                                                                                                                                                          

left_vessel = Rectangle(Point(-0.5, 10), Point(0.5, 20)) 

# Changing the second arguement has no impact on the result                                                                                                                                                                  
left_vessel = CSGRotation(left_vessel, Point(0, 10), pi/2)                                                                                                                                                                                                                                                     
vessel = in_vessel + left_vessel                                                                                                                                                                                                               
mesh = generate_mesh(vessel, 10)                                                                                                                                                                                                            

plot(mesh)                                                                                                                                                                                                                                     
interactive()

Comments (2)

  1. Benjamin Dam Kehlet

    A bit embarassing... This is hopefully fixed now. I'll try to improve the tests to cover. Can you check that this actually works now?

  2. Log in to comment