POV-Ray : Newsgroups : povray.general : Curved prism Server Time: 21 Sep 2020 16:42:50 GMT
 Curved prism (Message 1 to 10 of 11)
 From: Kima Subject: Curved prism Date: 9 Sep 2019 03:15:00 Message:
```I wonder if there is a way to create a curved prim (not the edges, but its
surface).

Since prism already has an option of conic_sweep, the same principle may create
a curvature on its surface.

In conic_sweep, the size of prism decreases linearly in the y-axis. Instead of a
linear decrease, can we shrink the prism along the y-axis to form a semi-sphere
instead of a sharp cone (of conic_sweep)?
```
 From: William F Pokorny Subject: Re: Curved prism Date: 9 Sep 2019 12:32:12 Message: <5d76464c\$1@news.povray.org>
```On 9/8/19 11:11 PM, Kima wrote:
> I wonder if there is a way to create a curved prim (not the edges, but its
> surface).
>
> Since prism already has an option of conic_sweep, the same principle may create
> a curvature on its surface.
>
> In conic_sweep, the size of prism decreases linearly in the y-axis. Instead of a
> linear decrease, can we shrink the prism along the y-axis to form a semi-sphere
> instead of a sharp cone (of conic_sweep)?
>
Nothing inbuilt(1,2).

Various partial methods have been created over the years to represent
rounded prisms. Using the POV-Ray site search turns up:

for example.

I've played with isosurface, df3 based, sampling methods some of which
can be found at:

http://wiki.povray.org/content/User:Wfpokorny/DensityFile

and if you search of soft_object you'll turn up a method doing the
sampling and df3 grid representation of the fly internally. Rounded
sides and flat top/bottom opens up other partial solutions.

Sometimes folks model for rounded text in some other tool and export the
mesh for use in POV-Ray. Tri/Quad patch mesh modeling with smoothing
normals is itself a partial solution with trade offs though it's the one
most supported out and about 3D graphics wise.

Bill P.

(1) - Not easy to do generically & on the fly at good performance. My
personal thinking is with POV-Ray  it would be a 'better' direction to
add some sort of any object to point cloud/mesh then mesh smoothing for
such rounding / blobbing ability. Something done this way would be
applicable to all objects and move us closer to mesh export-ability.
Here too there have been a number of external tools/attempts over the
years, but nothing has become 'the' method that I see. I have my own
idea for a surface, random / curvature driven walk, approach I think
might be better for maintaining hard / un-smoothed edges in the
generated meshes that I've never gotten around to trying. (Aside: There
is an ability to flip the normal directions via 2d point list direction
- and so surface top/bottom/side textures - that exists with prism and
lathe points lists which doesn't map to meshes.)

(2) - The current conic sweep is toward the x,z origin not some local
'medial axis' inside the shape.
```
 From: kurtz le pirate Subject: Re: Curved prism Date: 9 Sep 2019 17:03:59 Message: <5d7685ff\$1@news.povray.org>
```On 09/09/2019 05:11, Kima wrote:
> I wonder if there is a way to create a curved prim (not the edges, but its
> surface).
>
> Since prism already has an option of conic_sweep, the same principle may create
> a curvature on its surface.
>
> In conic_sweep, the size of prism decreases linearly in the y-axis. Instead of a
> linear decrease, can we shrink the prism along the y-axis to form a semi-sphere
> instead of a sharp cone (of conic_sweep)?

is this link on an archive: <http://www.oocities.org/ccolefax/bend.html>

--
Kurtz le pirate
Compagnie de la Banquise
```
 From: Bald Eagle Subject: Re: Curved prism Date: 9 Sep 2019 18:15:01 Message:
```kurtz le pirate <kur### [at] gmailcom> wrote:

> is this link on an archive: <http://www.oocities.org/ccolefax/bend.html>

Yes - I remember that, and it was exactly what I had in mind when I was
furiously trying to get the box to bend over here:

I think that for prisms that have any level of complexity, we'd need a method to
generate a "1-dimensional" version of the prism - the core of an offset curve -
or what are called "single line" fonts.

Then the edges of the prism could converge on that.

I'd say his best bet is probably straight CSG.
If he wants it to be smoothed, he'll need to make isosurface cylinders with
sphere-capped ends and blob them, or do the smooth_union thing.

But if there are going to be regions with different edge lengths, and therefore
give rise to cylinders of different radius, then he'd probably have to use
round-capped cones.

Tricksy it is, my Precious, but maybe this Hobbit has clever fingers...
```
 From: Le Forgeron Subject: Re: Curved prism Date: 10 Sep 2019 18:13:06 Message: <5d77e7b2@news.povray.org>
```Le 09/09/2019 Ã  05:11, Kima a Ã©critÂ :
> I wonder if there is a way to create a curved prim (not the edges, but its
> surface).
>
> Since prism already has an option of conic_sweep, the same principle may create
> a curvature on its surface.
>
> In conic_sweep, the size of prism decreases linearly in the y-axis. Instead of a
> linear decrease, can we shrink the prism along the y-axis to form a semi-sphere
> instead of a sharp cone (of conic_sweep)?
>
>
Are you expecting something like the attached picture ?
(faked so far, basic idea would use the curvature of a 2D curve to
'emboss' the line connecting two instances of the curve in parallele planes)

Beware of conic prism, it is biased toward the axis at the origin.
```

Attachments:

Preview of image 'cp.png'

 From: Bald Eagle Subject: Re: Curved prism Date: 10 Sep 2019 18:30:01 Message:
```Le_Forgeron <jgr### [at] freefr> wrote:

> Are you expecting something like the attached picture ?

If I read what he wanted correctly, he wants the top of the prism to not be
flat, but to be "domed".

So, the conic_sweep gives a linear convergence to a point - and I think what he
wants is a sort of radius*cos(y) convergence so that it's rounded /
hemispherical.
```
 From: Kima Subject: Re: Curved prism Date: 21 Sep 2019 22:15:01 Message:
```Le_Forgeron <jgr### [at] freefr> wrote:
> Le 09/09/2019 Ã  05:11, Kima a Ã©critÂ :
> > I wonder if there is a way to create a curved prim (not the edges, but its
> > surface).
> >
> > Since prism already has an option of conic_sweep, the same principle may create
> > a curvature on its surface.
> >
> > In conic_sweep, the size of prism decreases linearly in the y-axis. Instead of a
> > linear decrease, can we shrink the prism along the y-axis to form a semi-sphere
> > instead of a sharp cone (of conic_sweep)?
> >
> >
> Are you expecting something like the attached picture ?
> (faked so far, basic idea would use the curvature of a 2D curve to
> 'emboss' the line connecting two instances of the curve in parallele planes)
>
> Beware of conic prism, it is biased toward the axis at the origin.

Not exactly, as I want a curvature on the top of prism rather than its edges,
but it can work, as we can increase the curvature of the rounded edges to cover
the top surface.

However, there is no established approach to create rounded prisms (to my
knowledge). I reckon your image is by roundedprism macro. The available macro
only works for basic prim shapes provided by an array or outer points.
```
 From: Bald Eagle Subject: Re: Curved prism Date: 16 Apr 2020 02:55:00 Message:
```I think this is what is wanted:

http://news.povray.org/povray.binaries.images/message/%3Cweb.5e97c744fd34edcfb0b41570%40news.povray.org%3E/#%3Cweb.5e97
c744fd34edcfb0b41570%40news.povray.org%3E
```
 From: Le Forgeron Subject: Re: Curved prism Date: 18 Apr 2020 16:39:20 Message: <5e9b2d38\$1@news.povray.org>
```Le 16/04/2020 Ã  04:51, Bald Eagle a Ã©critÂ :
>
> I think this is what is wanted:
>
>
http://news.povray.org/povray.binaries.images/message/%3Cweb.5e97c744fd34edcfb0b41570%40news.povray.org%3E/#%3Cweb.5e97
> c744fd34edcfb0b41570%40news.povray.org%3E
>

Ok, clearer with a picture, thanks.

So height on the curve is function of the distance to the prism's edge.

I foresee plenty of problems with concave prism.

It reminds me of pattern for color interpolation on polygon

http://wiki.povray.org/content/User:Le_Forgeron#Interpolation_for_polygon

> http://wiki.povray.org/content/User:Le_Forgeron#Interpolation_for_polygon

Sad point: I see no easy solver for ray computation.

Good point: defining a strength-field, using the distance to the nearest
edge of the prism, is possible. Then a non-linear function (like square
root or cube) can be used, to curve in space the shape of such isosurface.

Infernal point: the continuity of such field, when changing edge, is not
intrinsic, so excepted for regular polygon, it is probably doomed.
```
 From: Bald Eagle Subject: Re: Curved prism Date: 18 Apr 2020 20:25:01 Message:
```Le_Forgeron <jgr### [at] freefr> wrote:

> Ok, clearer with a picture, thanks.
> So height on the curve is function of the distance to the prism's edge.

Hmm.   Maybe.   In my mind, I formulate it as "width at any point above the base
prism is a function of the height above that base".
But it may work best either way depending upon the prism used...

> I foresee plenty of problems with concave prism.

Oh yes.  Maybe if there's a way to make a nice "center-line font" style offset
curve it would be possible to roughly estimate...

> Good point: defining a strength-field, using the distance to the nearest
> edge of the prism, is possible. Then a non-linear function (like square
> root or cube) can be used, to curve in space the shape of such isosurface.

I used a liner interpolation between the hexagonal "prism" (for the cap, it's an
isosurface) and a sphere.
The severe challenge would be defining an isosurface describing the prism
without resorting to using the "object as isosurface" by WFP.

> Infernal point: the continuity of such field, when changing edge, is not
> intrinsic, so excepted for regular polygon, it is probably doomed.

Thus why my example is a regular polygon.  :)    I tried to play with doing some
CSG, but even with the hexagon, it's a royal pain and rapidly gets very complex.
Some cool "failures" though.  Might be useful for non-smooth decorative column
capital.
```