example_ppm3 Program

Uses

    • forcad
    • forimage
    • forcolormap
    • fortime
  • program~~example_ppm3~~UsesGraph program~example_ppm3 example_ppm3 forcolormap forcolormap program~example_ppm3->forcolormap forimage forimage program~example_ppm3->forimage fortime fortime program~example_ppm3->fortime module~forcad forcad program~example_ppm3->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


Calls

program~~example_ppm3~~CallsGraph program~example_ppm3 example_ppm3 compute_rgb compute_rgb program~example_ppm3->compute_rgb export_pnm export_pnm program~example_ppm3->export_pnm get_b get_b program~example_ppm3->get_b get_g get_g program~example_ppm3->get_g get_r get_r program~example_ppm3->get_r none~get_xg nurbs_surface%get_Xg program~example_ppm3->none~get_xg proc~create nurbs_surface%create program~example_ppm3->proc~create proc~finalize nurbs_surface%finalize program~example_ppm3->proc~finalize proc~get_ng nurbs_surface%get_ng program~example_ppm3->proc~get_ng proc~modify_xc nurbs_surface%modify_Xc program~example_ppm3->proc~modify_xc proc~set_tetragon nurbs_surface%set_tetragon program~example_ppm3->proc~set_tetragon proc~translate_xc nurbs_surface%translate_Xc program~example_ppm3->proc~translate_xc set set program~example_ppm3->set set_pnm set_pnm program~example_ppm3->set_pnm timer_start timer_start program~example_ppm3->timer_start timer_stop timer_stop program~example_ppm3->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~get_knot nurbs_surface%get_knot proc~modify_xc->none~get_knot none~get_wc nurbs_surface%get_Wc proc~modify_xc->none~get_wc none~get_xc nurbs_surface%get_Xc proc~modify_xc->none~get_xc none~set nurbs_surface%set proc~modify_xc->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~get_knot_all nurbs_surface%get_knot_all none~get_knot->proc~get_knot_all proc~get_knoti nurbs_surface%get_knoti none~get_knot->proc~get_knoti proc~get_wc_all nurbs_surface%get_Wc_all none~get_wc->proc~get_wc_all proc~get_wci nurbs_surface%get_Wci none~get_wc->proc~get_wci proc~get_xc_all nurbs_surface%get_Xc_all none~get_xc->proc~get_xc_all proc~get_xci nurbs_surface%get_Xci none~get_xc->proc~get_xci proc~get_xcid nurbs_surface%get_Xcid none~get_xc->proc~get_xcid 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
type(colormap) :: cmap
integer :: green
integer :: height
integer :: i
integer, allocatable :: idx(:,:)
type(format_pnm) :: image
integer :: ng(2)
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(:)