example_ppm1 Program

Uses

    • forcad
    • forimage
    • forcolormap
    • fortime
  • program~~example_ppm1~~UsesGraph program~example_ppm1 example_ppm1 forcolormap forcolormap program~example_ppm1->forcolormap forimage forimage program~example_ppm1->forimage fortime fortime program~example_ppm1->fortime module~forcad forcad program~example_ppm1->module~forcad module~forcad_kinds forcad_kinds module~forcad->module~forcad_kinds module~forcad_nurbs_curve forcad_nurbs_curve module~forcad->module~forcad_nurbs_curve module~forcad_nurbs_surface forcad_nurbs_surface module~forcad->module~forcad_nurbs_surface module~forcad_nurbs_volume forcad_nurbs_volume module~forcad->module~forcad_nurbs_volume module~forcad_utils forcad_utils module~forcad->module~forcad_utils module~forcad_nurbs_curve->module~forcad_kinds module~forcad_nurbs_curve->module~forcad_utils module~forcad_nurbs_surface->module~forcad_kinds module~forcad_nurbs_surface->module~forcad_utils module~forcad_nurbs_volume->module~forcad_kinds module~forcad_nurbs_volume->module~forcad_utils module~forcad_utils->module~forcad_kinds

Visualization of NURBS surfaces using ForCAD, ForImage and ForColorMap libraries This example converts NURBS surfaces (vector) to an image (raster) using ForCAD, ForImage and ForColorMap libraries.

Set the shape parameters for a tetragon Set the shape parameters for a ring Set the shape parameters for a ring Set the shape parameters for a ring Set the shape parameters for a ring


Calls

program~~example_ppm1~~CallsGraph program~example_ppm1 example_ppm1 compute_rgb compute_rgb program~example_ppm1->compute_rgb export_pnm export_pnm program~example_ppm1->export_pnm get_b get_b program~example_ppm1->get_b get_g get_g program~example_ppm1->get_g get_r get_r program~example_ppm1->get_r none~get_xg nurbs_surface%get_Xg program~example_ppm1->none~get_xg proc~create nurbs_surface%create program~example_ppm1->proc~create proc~finalize nurbs_surface%finalize program~example_ppm1->proc~finalize proc~get_ng nurbs_surface%get_ng program~example_ppm1->proc~get_ng proc~set_ring nurbs_surface%set_ring program~example_ppm1->proc~set_ring proc~set_tetragon nurbs_surface%set_tetragon program~example_ppm1->proc~set_tetragon set set program~example_ppm1->set set_pnm set_pnm program~example_ppm1->set_pnm timer_start timer_start program~example_ppm1->timer_start timer_stop timer_stop program~example_ppm1->timer_stop proc~get_xg_all nurbs_surface%get_Xg_all none~get_xg->proc~get_xg_all proc~get_xgi nurbs_surface%get_Xgi none~get_xg->proc~get_xgi proc~get_xgid nurbs_surface%get_Xgid none~get_xg->proc~get_xgid interface~compute_xg compute_Xg proc~create->interface~compute_xg interface~ndgrid ndgrid proc~create->interface~ndgrid proc~is_rational nurbs_surface%is_rational proc~create->proc~is_rational none~set nurbs_surface%set proc~set_ring->none~set proc~set_tetragon->none~set proc~tetragon_xc tetragon_Xc proc~set_tetragon->proc~tetragon_xc proc~compute_xg_bspline_2d compute_Xg_bspline_2d interface~compute_xg->proc~compute_xg_bspline_2d proc~compute_xg_bspline_2d_1point compute_Xg_bspline_2d_1point interface~compute_xg->proc~compute_xg_bspline_2d_1point proc~compute_xg_nurbs_2d compute_Xg_nurbs_2d interface~compute_xg->proc~compute_xg_nurbs_2d proc~compute_xg_nurbs_2d_1point compute_Xg_nurbs_2d_1point interface~compute_xg->proc~compute_xg_nurbs_2d_1point proc~ndgrid2 ndgrid2 interface~ndgrid->proc~ndgrid2 proc~ndgrid3 ndgrid3 interface~ndgrid->proc~ndgrid3 proc~set1 nurbs_surface%set1 none~set->proc~set1 proc~set2 nurbs_surface%set2 none~set->proc~set2 proc~set3 nurbs_surface%set3 none~set->proc~set3 proc~set4 nurbs_surface%set4 none~set->proc~set4 proc~basis_bspline basis_bspline proc~compute_xg_bspline_2d->proc~basis_bspline proc~kron kron proc~compute_xg_bspline_2d->proc~kron proc~compute_xg_bspline_2d_1point->proc~basis_bspline proc~compute_xg_bspline_2d_1point->proc~kron proc~cmp_tgc_2d cmp_Tgc_2d proc~compute_xg_nurbs_2d->proc~cmp_tgc_2d proc~compute_xg_nurbs_2d_1point->proc~basis_bspline proc~compute_xg_nurbs_2d_1point->proc~kron proc~cmp_degree nurbs_surface%cmp_degree proc~set1->proc~cmp_degree proc~cmp_nc nurbs_surface%cmp_nc proc~set1->proc~cmp_nc proc~set2->proc~cmp_nc proc~compute_knot_vector compute_knot_vector proc~set2->proc~compute_knot_vector proc~set3->proc~cmp_degree proc~get_multiplicity nurbs_surface%get_multiplicity proc~cmp_degree->proc~get_multiplicity interface~compute_multiplicity compute_multiplicity proc~cmp_nc->interface~compute_multiplicity proc~cmp_tgc_2d->proc~basis_bspline proc~cmp_tgc_2d->proc~kron proc~repelem repelem proc~compute_knot_vector->proc~repelem proc~compute_multiplicity1 compute_multiplicity1 interface~compute_multiplicity->proc~compute_multiplicity1 proc~compute_multiplicity2 compute_multiplicity2 interface~compute_multiplicity->proc~compute_multiplicity2 proc~get_multiplicity->interface~compute_multiplicity

Variables

Type Attributes Name Initial
real(kind=rk), allocatable :: Xg(:,:)
real(kind=rk) :: aspect_ratio
type(color) :: background_color
integer :: blue
real(kind=rk) :: center(3)
type(colormap) :: cmap
integer :: green
integer :: height
integer :: i
integer, allocatable :: idx(:,:)
type(format_pnm) :: image
real(kind=rk) :: inner_radius
integer :: ng(2)
real(kind=rk) :: outer_radius
integer(kind=ik), allocatable :: px(:,:)
integer :: red
integer :: res1
integer :: res2
type(nurbs_surface) :: shape
type(timer) :: t
integer :: width
real(kind=rk), allocatable :: z_values(:)