Cancel
Showing results for
Did you mean:

# How create Sinusoidal curve (or hollow cylinder)?

Creator

Hello.

First of all I want to thank Blas Molero for helping with my previous problem.

Now I have one more question.

I need to simulate a circular hollow tube whose axis is curved along the sinusoid.

I didnt find the right team in the Menu section Geometry.

I plan to perform this simulation using the Extrude command. in this case I need a sinusoid curve.

Tell me how to solve this problem.

Probably I should use tools-variables, but I dont know how to do it.
Thanks for the help.

5 REPLIES

# Re: How create Sinusoidal curve (or hollow cylinder)?

Siemens Legend

Try the command: Geometry > Solid > Sweep

Choose the cross section of the tube and then choose the curve you want as the axis. The cross section will need to be a surface or boundary surface.

# Re: How create Sinusoidal curve (or hollow cylinder)?

Creator

but I had a question: how to create a sinusoid curve y = sin(x) ?

# Re: How create Sinusoidal curve (or hollow cylinder)?

Creator

Hello/

I spent a lot of time solving my problem, but the solution is still missing.

I decided to do the following:
1. Calculate the coordinates of points in Excel.
2. Export these coordinates from Excel to Femap.
3. Use commands Curve-Spline
I planned to export the points from Excel to Femap using an Excel sheet with support for macros.

Here is this file.

But unfortunately, I dont know VBA and can not run this macro.
if you get to run this application, write down the points how to do it.

Thanks.

# Re: How create Sinusoidal curve (or hollow cylinder)?

Legend

You can use similar API:

```Sub Main
Dim App As femap.model
Set App = feFemap()

Dim count As Long 'count=37 in this example, this value must be at least 4, and can be no larger than 109
Dim j As Long
Dim xyz(110) As Variant 'xyz(3*count-1), max. xyz(326)
Dim x As Double, y As Double, z As Double
Dim xfactor As Double, yfactor As Double

xfactor=5
yfactor=1

j=0
For i=0 To 360 Step 10

x=i/10
y=50*Sin(i/180*3.14)
z=0

xyz(j)=xfactor*x
xyz(j+1)=yfactor*y
xyz(j+2)=z
j=j+3

Next

count=j/3

rc=App.feSplinePoints(False,False,count,xyz,True)
App.feViewRegenerate(0)

End Sub```

You should modify Dim xyz(3*count-1) as Variant line, x,y,z functions and variables of the For...Next cycle to your values.

Best regards

# Re: How create Sinusoidal curve (or hollow cylinder)?

Creator

I quite changed your text for my practical problem

Thanks again

```Sub Main
Dim App As femap.model
Set App = feFemap()

Dim count As Long 'count=37 in this example, this value must be at least 4, and can be no larger than 109
Dim j As Long
Dim xyz(1100) As Variant 'xyz(3*count-1), max. xyz(326)
Dim x As Double, y As Double, z As Double
Dim xfactor As Double, yfactor As Double

xfactor=441.17750225073387075134579206861
yfactor=1
Dim n As Integer
n=72

j=0
Dim pi As Double
pi=3.1415926535897932384626433832795
For i=0 To n Step 1

x=i*(pi/n)
y=0.5*Sin(x)
z=0

xyz(j)=xfactor*x
xyz(j+1)=yfactor*y
xyz(j+2)=z
j=j+3

Next

count=j/3

rc=App.feSplinePoints(False,False,count,xyz,True)
App.feViewRegenerate(0)

End Sub```