From b38b0825eed71445479136b439bc1ba6a6eacffc Mon Sep 17 00:00:00 2001 From: SaraP Date: Tue, 28 Sep 2021 17:11:24 +0200 Subject: [PATCH 1/3] Extern : - C3d aggiornamento delle librerie ( 114902). --- C3d/Include/action.h | 18 +- C3d/Include/action_analysis.h | 34 +-- C3d/Include/action_b_shaper.h | 4 +- C3d/Include/action_curve.h | 8 +- C3d/Include/action_curve3d.h | 10 +- C3d/Include/action_mesh.h | 4 +- C3d/Include/action_phantom.h | 6 +- C3d/Include/action_point.h | 14 +- C3d/Include/action_sheet.h | 2 +- C3d/Include/action_solid.h | 40 +-- C3d/Include/action_surface.h | 40 ++- C3d/Include/action_surface_curve.h | 16 +- C3d/Include/alg_base.h | 2 +- C3d/Include/alg_curve_delete_part.h | 16 +- C3d/Include/alg_dimension.h | 2 +- C3d/Include/alg_draw.h | 2 +- C3d/Include/alg_indicator.h | 18 +- C3d/Include/alg_mesh_to_brep.h | 4 +- C3d/Include/alg_nurbs_conic.h | 48 ++-- C3d/Include/alg_polyline.h | 14 +- C3d/Include/assembly.h | 22 +- C3d/Include/assisting_item.h | 8 +- C3d/Include/attr_color.h | 10 +- C3d/Include/attr_common_attribute.h | 22 +- C3d/Include/attr_dencity.h | 8 +- C3d/Include/attr_elementary_attribute.h | 10 +- C3d/Include/attr_flange_attribute.h | 10 +- C3d/Include/attr_geometric_attribute.h | 10 +- C3d/Include/attr_identifier.h | 18 +- C3d/Include/attr_product.h | 14 +- C3d/Include/attr_selected.h | 6 +- C3d/Include/attr_stamprib_attribute.h | 10 +- C3d/Include/attr_user_attribute.h | 36 +-- C3d/Include/attribute.h | 10 +- C3d/Include/attribute_container.h | 16 +- C3d/Include/cdet_data.h | 14 +- C3d/Include/cdet_utility.h | 4 +- C3d/Include/check_geometry.h | 40 +-- C3d/Include/collection.h | 16 +- C3d/Include/constraint.h | 6 +- C3d/Include/contour_graph.h | 18 +- C3d/Include/conv_annotation_item.h | 2 +- C3d/Include/conv_exchange_settings.h | 2 +- C3d/Include/conv_model_document.h | 56 +++-- C3d/Include/conv_model_exchange.h | 70 +++--- C3d/Include/conv_topo_mesh.h | 42 ++-- C3d/Include/cr_attribute_provider.h | 12 +- C3d/Include/cr_boolean_solid.h | 12 +- C3d/Include/cr_chamfer_solid.h | 4 +- C3d/Include/cr_connecting_curve.h | 14 +- C3d/Include/cr_cutting_solid.h | 10 +- C3d/Include/cr_detach_solid.h | 12 +- C3d/Include/cr_displace_creator.h | 42 ++-- C3d/Include/cr_draft_solid.h | 14 +- C3d/Include/cr_duplication_solid.h | 10 +- C3d/Include/cr_elementary_solid.h | 10 +- C3d/Include/cr_evolution_solid.h | 10 +- C3d/Include/cr_extension_shell.h | 10 +- C3d/Include/cr_extrusion_solid.h | 12 +- C3d/Include/cr_fillet_solid.h | 10 +- C3d/Include/cr_hole_solid.h | 10 +- C3d/Include/cr_intersection_curve.h | 10 +- C3d/Include/cr_join_shell.h | 10 +- C3d/Include/cr_lofted_solid.h | 10 +- C3d/Include/cr_median_shell.h | 10 +- C3d/Include/cr_mesh_shell.h | 10 +- C3d/Include/cr_modified_nurbs_.h | 20 +- C3d/Include/cr_modified_solid.h | 10 +- C3d/Include/cr_nurbs3d.h | 10 +- C3d/Include/cr_nurbs_block_solid.h | 10 +- C3d/Include/cr_nurbs_surfaces_shell.h | 4 +- C3d/Include/cr_nurbs_surfaces_solid.h | 12 +- C3d/Include/cr_offset_curve.h | 10 +- C3d/Include/cr_patch_creator.h | 10 +- C3d/Include/cr_projection_curve.h | 10 +- C3d/Include/cr_revolution_solid.h | 8 +- C3d/Include/cr_rib_solid.h | 10 +- C3d/Include/cr_ruled_shell.h | 10 +- C3d/Include/cr_section_shell.h | 10 +- C3d/Include/cr_sheet_bend_any_solid.h | 10 +- C3d/Include/cr_sheet_bend_by_edge_solid.h | 10 +- C3d/Include/cr_sheet_bend_over_seg_solid.h | 10 +- C3d/Include/cr_sheet_bend_unbend_solid.h | 12 +- C3d/Include/cr_sheet_builder_solid.h | 10 +- C3d/Include/cr_sheet_closed_corner_solid.h | 10 +- C3d/Include/cr_sheet_joint_bend_solid.h | 10 +- C3d/Include/cr_sheet_metal_solid.h | 10 +- C3d/Include/cr_sheet_restored_edges_solid.h | 10 +- C3d/Include/cr_sheet_simplified_flat_solid.h | 10 +- C3d/Include/cr_sheet_union_solid.h | 10 +- C3d/Include/cr_simple_creator.h | 28 +-- C3d/Include/cr_smooth_solid.h | 10 +- C3d/Include/cr_split_data.h | 54 ++--- C3d/Include/cr_split_shell.h | 10 +- C3d/Include/cr_stamp_bead_solid.h | 10 +- C3d/Include/cr_stamp_jalousie_solid.h | 10 +- C3d/Include/cr_stamp_jog_solid.h | 10 +- C3d/Include/cr_stamp_remove_solid.h | 10 +- C3d/Include/cr_stamp_rib_solid.h | 10 +- C3d/Include/cr_stamp_ruled_solid.h | 10 +- C3d/Include/cr_stamp_solid.h | 10 +- C3d/Include/cr_stamp_spherical_solid.h | 10 +- C3d/Include/cr_stamp_user_solid.h | 10 +- C3d/Include/cr_stitch_solid.h | 18 +- C3d/Include/cr_surface_spline.h | 10 +- C3d/Include/cr_swept_solid.h | 10 +- C3d/Include/cr_symmetry_solid.h | 10 +- C3d/Include/cr_thin_sheet.h | 10 +- C3d/Include/cr_thin_shell_solid.h | 10 +- C3d/Include/cr_transformed_solid.h | 10 +- C3d/Include/cr_truncated_shell.h | 10 +- C3d/Include/cr_union_solid.h | 20 +- C3d/Include/creator.h | 32 +-- C3d/Include/creator_transaction.h | 14 +- C3d/Include/cur_arc.h | 20 +- C3d/Include/cur_arc3d.h | 18 +- C3d/Include/cur_b_spline.h | 10 +- C3d/Include/cur_bezier.h | 12 +- C3d/Include/cur_bezier3d.h | 16 +- C3d/Include/cur_bridge3d.h | 10 +- C3d/Include/cur_character_curve.h | 10 +- C3d/Include/cur_character_curve3d.h | 14 +- C3d/Include/cur_cone_spiral.h | 10 +- C3d/Include/cur_contour.h | 22 +- C3d/Include/cur_contour3d.h | 32 +-- C3d/Include/cur_contour_on_plane.h | 8 +- C3d/Include/cur_contour_on_surface.h | 22 +- C3d/Include/cur_contour_with_breaks.h | 12 +- C3d/Include/cur_cosinusoid.h | 16 +- C3d/Include/cur_crooked_spiral.h | 6 +- C3d/Include/cur_cubic_spline.h | 10 +- C3d/Include/cur_cubic_spline3d.h | 14 +- C3d/Include/cur_curve_spiral.h | 4 +- C3d/Include/cur_hermit.h | 12 +- C3d/Include/cur_hermit3d.h | 16 +- C3d/Include/cur_line.h | 14 +- C3d/Include/cur_line3d.h | 18 +- C3d/Include/cur_line_segment.h | 18 +- C3d/Include/cur_line_segment3d.h | 18 +- C3d/Include/cur_nurbs.h | 24 +- C3d/Include/cur_nurbs3d.h | 34 +-- C3d/Include/cur_nurbs_vector.h | 12 +- C3d/Include/cur_nurbs_vector3d.h | 2 +- C3d/Include/cur_offset_curve.h | 14 +- C3d/Include/cur_offset_curve3d.h | 6 +- C3d/Include/cur_plane_curve.h | 22 +- C3d/Include/cur_point_curve.h | 12 +- C3d/Include/cur_polycurve.h | 10 +- C3d/Include/cur_polycurve3d.h | 10 +- C3d/Include/cur_polyline.h | 16 +- C3d/Include/cur_polyline3d.h | 20 +- C3d/Include/cur_projection_curve.h | 30 +-- C3d/Include/cur_reparam_curve.h | 27 ++- C3d/Include/cur_reparam_curve3d.h | 27 ++- C3d/Include/cur_silhouette_curve.h | 20 +- C3d/Include/cur_spiral.h | 10 +- C3d/Include/cur_surface_curve.h | 24 +- C3d/Include/cur_surface_intersection.h | 24 +- C3d/Include/cur_trimmed_curve.h | 12 +- C3d/Include/cur_trimmed_curve3d.h | 16 +- C3d/Include/curve.h | 38 +-- C3d/Include/curve3d.h | 52 ++-- C3d/Include/dxf_converter.h | 6 +- C3d/Include/func_analytical_function.h | 8 +- C3d/Include/func_const_function.h | 4 +- C3d/Include/func_cubic_function.h | 10 +- C3d/Include/func_cubic_spline_function.h | 4 +- C3d/Include/func_line_function.h | 4 +- C3d/Include/func_mono_smooth_function.h | 20 +- C3d/Include/func_nurbs_function.h | 4 +- C3d/Include/func_power_function.h | 4 +- C3d/Include/func_serve_function.h | 4 +- C3d/Include/func_sinus_function.h | 4 +- C3d/Include/function.h | 8 +- C3d/Include/gc_api.h | 24 -- C3d/Include/gce_api.h | 6 +- C3d/Include/gce_geom.h | 18 +- C3d/Include/gce_types.h | 2 +- C3d/Include/gcm_api.h | 2 +- C3d/Include/gcm_constraint.h | 8 +- C3d/Include/gcm_geom.h | 24 +- C3d/Include/gcm_manager.h | 2 +- C3d/Include/graph_algorithms.h | 2 +- C3d/Include/instance.h | 14 +- C3d/Include/io_buffer.h | 8 +- C3d/Include/io_memory_buffer.h | 14 +- C3d/Include/io_tape.h | 66 ++--- C3d/Include/io_tree.h | 20 +- C3d/Include/item_registrator.h | 6 +- C3d/Include/legend.h | 8 +- C3d/Include/lump.h | 6 +- C3d/Include/map_create.h | 30 +-- C3d/Include/map_implementation.h | 2 +- C3d/Include/map_lump.h | 90 ++++--- C3d/Include/map_section.h | 10 +- C3d/Include/map_vestige.h | 80 +++--- C3d/Include/marker.h | 8 +- C3d/Include/math_define.h | 8 +- C3d/Include/math_version.h | 2 +- C3d/Include/mb_class_traits.h | 10 +- C3d/Include/mb_cross_point.h | 2 +- C3d/Include/mb_cube_tree.h | 242 ++++++++----------- C3d/Include/mb_data.h | 2 +- C3d/Include/mb_dimension.h | 24 +- C3d/Include/mb_matrixnn.h | 18 +- C3d/Include/mb_nurbs_function.h | 54 ++--- C3d/Include/mb_placement3d.h | 2 +- C3d/Include/mb_point_mating.h | 120 ++++----- C3d/Include/mb_property.h | 30 +-- C3d/Include/mb_rough.h | 10 +- C3d/Include/mb_symbol.h | 16 +- C3d/Include/mb_thread.h | 36 +-- C3d/Include/mb_variables.h | 10 +- C3d/Include/mesh.h | 48 ++-- C3d/Include/mesh_grid.h | 24 +- C3d/Include/mesh_plane_grid.h | 14 +- C3d/Include/mesh_polygon.h | 8 +- C3d/Include/mesh_primitive.h | 24 +- C3d/Include/mip_solid_mass_inertia.h | 18 +- C3d/Include/model.h | 18 +- C3d/Include/model_item.h | 26 +- C3d/Include/model_tree.h | 22 +- C3d/Include/model_tree_data.h | 10 +- C3d/Include/multiline.h | 16 +- C3d/Include/name_check.h | 2 +- C3d/Include/name_contour_tree.h | 8 +- C3d/Include/name_item.h | 26 +- C3d/Include/op_curve_parameter.h | 8 +- C3d/Include/op_duplication_parameter.h | 26 +- C3d/Include/op_shell_parameter.h | 118 ++++----- C3d/Include/op_swept_parameter.h | 108 ++++----- C3d/Include/pars_equation_tree.h | 50 ++-- C3d/Include/pars_user_function.h | 2 +- C3d/Include/pars_yacc.h | 12 +- C3d/Include/part_solid.h | 2 +- C3d/Include/plane_instance.h | 22 +- C3d/Include/plane_item.h | 10 +- C3d/Include/point3d.h | 8 +- C3d/Include/point_frame.h | 14 +- C3d/Include/position_data.h | 2 +- C3d/Include/reference_item.h | 96 ++++---- C3d/Include/region.h | 14 +- C3d/Include/sheet_metal_param.h | 128 +++++----- C3d/Include/solid.h | 20 +- C3d/Include/space_instance.h | 8 +- C3d/Include/space_item.h | 11 +- C3d/Include/surf_chamfer_surface.h | 8 +- C3d/Include/surf_channel_surface.h | 2 +- C3d/Include/surf_cone_surface.h | 10 +- C3d/Include/surf_coons_surface.h | 14 +- C3d/Include/surf_corner_surface.h | 10 +- C3d/Include/surf_cover_surface.h | 14 +- C3d/Include/surf_curve_bounded_surface.h | 20 +- C3d/Include/surf_cylinder_surface.h | 10 +- C3d/Include/surf_elementary_surface.h | 12 +- C3d/Include/surf_elevation_surface.h | 22 +- C3d/Include/surf_evolution_surface.h | 10 +- C3d/Include/surf_exaction_surface.h | 8 +- C3d/Include/surf_expansion_surface.h | 18 +- C3d/Include/surf_exploration_surface.h | 8 +- C3d/Include/surf_extrusion_surface.h | 12 +- C3d/Include/surf_fillet_surface.h | 14 +- C3d/Include/surf_gregory_surface.h | 10 +- C3d/Include/surf_grid_surface.h | 14 +- C3d/Include/surf_join_surface.h | 8 +- C3d/Include/surf_lofted_surface.h | 22 +- C3d/Include/surf_mesh_surface.h | 37 +-- C3d/Include/surf_offset_surface.h | 14 +- C3d/Include/surf_plane.h | 12 +- C3d/Include/surf_polysurface.h | 8 +- C3d/Include/surf_revolution_surface.h | 14 +- C3d/Include/surf_ruled_surface.h | 12 +- C3d/Include/surf_section_surface.h | 32 +-- C3d/Include/surf_sector_surface.h | 10 +- C3d/Include/surf_smooth_surface.h | 16 +- C3d/Include/surf_sphere_surface.h | 8 +- C3d/Include/surf_spine.h | 18 +- C3d/Include/surf_spiral_surface.h | 12 +- C3d/Include/surf_spline_surface.h | 16 +- C3d/Include/surf_swept_surface.h | 10 +- C3d/Include/surf_tessellation.h | 8 +- C3d/Include/surf_torus_surface.h | 8 +- C3d/Include/surface.h | 28 +-- C3d/Include/system_atomic.h | 173 ------------- C3d/Include/system_cpp_standard.h | 34 --- C3d/Include/system_dependency.h | 18 +- C3d/Include/system_types.h | 30 --- C3d/Include/templ_array2.h | 18 +- C3d/Include/templ_balance_tree.h | 52 ++-- C3d/Include/templ_c_array.h | 12 +- C3d/Include/templ_csp_array.h | 8 +- C3d/Include/templ_css_array.h | 16 +- C3d/Include/templ_dptr.h | 26 +- C3d/Include/templ_fdp_array.h | 31 ++- C3d/Include/templ_fdp_array_rw.h | 8 +- C3d/Include/templ_ifc_array.h | 20 +- C3d/Include/templ_im_array.h | 4 +- C3d/Include/templ_iterator.h | 4 +- C3d/Include/templ_kdtree.h | 2 +- C3d/Include/templ_lis_array.h | 4 +- C3d/Include/templ_multimap.h | 12 +- C3d/Include/templ_p_array.h | 26 +- C3d/Include/templ_p_array_rw.h | 6 +- C3d/Include/templ_pointer.h | 40 ++- C3d/Include/templ_psrt_array.h | 38 +-- C3d/Include/templ_rp_array.h | 10 +- C3d/Include/templ_rp_array_rw.h | 4 +- C3d/Include/templ_rp_stack.h | 6 +- C3d/Include/templ_rw_operator.h | 6 +- C3d/Include/templ_s_array.h | 16 +- C3d/Include/templ_s_array_rw.h | 4 +- C3d/Include/templ_s_list.h | 158 ++++++------ C3d/Include/templ_s_queue.h | 18 +- C3d/Include/templ_sfdp_array.h | 40 +-- C3d/Include/templ_sfp_array.h | 12 +- C3d/Include/templ_sp_array.h | 12 +- C3d/Include/templ_sparse_array2.h | 6 +- C3d/Include/templ_sptr.h | 34 ++- C3d/Include/templ_stack.h | 4 +- C3d/Include/templ_t_list.h | 2 +- C3d/Include/tool_log.h | 2 +- C3d/Include/tool_memory_debug.h | 4 +- C3d/Include/tool_multithreading.h | 86 +++---- C3d/Include/tool_mutex.h | 8 +- C3d/Include/tool_quick_sort.h | 44 ++-- C3d/Include/tool_string_util.h | 24 +- C3d/Include/topology.h | 130 +++++----- C3d/Include/topology_faceset.h | 94 +++---- C3d/Include/topology_item.h | 24 +- C3d/Include/wire_frame.h | 48 ++-- C3d/Lib/x32/Debug/c3d.lib | Bin 8528490 -> 8531784 bytes C3d/Lib/x32/Release/c3d.lib | Bin 9435380 -> 9438674 bytes C3d/Lib/x64/Debug/c3d.lib | Bin 9096444 -> 9099834 bytes C3d/Lib/x64/Release/c3d.lib | Bin 10034396 -> 10037786 bytes 334 files changed, 3026 insertions(+), 3340 deletions(-) diff --git a/C3d/Include/action.h b/C3d/Include/action.h index 6f37510..1683f37 100644 --- a/C3d/Include/action.h +++ b/C3d/Include/action.h @@ -77,7 +77,7 @@ MATH_FUNC (bool) IsMultiShell( const MbFaceShell * shell, bool checkNesting = tr \ingroup Algorithms_3D */ // --- -MATH_FUNC (size_t) DetachShells( MbFaceShell & shell, RPArray & parts, bool sort, c3d::IndicesVector * partIndices = c3d_null ); +MATH_FUNC (size_t) DetachShells( MbFaceShell & shell, RPArray & parts, bool sort, c3d::IndicesVector * partIndices = nullptr ); //------------------------------------------------------------------------------ @@ -102,7 +102,7 @@ MATH_FUNC (size_t) DetachShells( MbFaceShell & shell, RPArray & par \ingroup Algorithms_3D */ // --- -MATH_FUNC (size_t) DetachShells( MbFaceShell & shell, c3d::ShellsVector & parts, bool sort, c3d::IndicesVector * partIndices = c3d_null ); +MATH_FUNC (size_t) DetachShells( MbFaceShell & shell, c3d::ShellsVector & parts, bool sort, c3d::IndicesVector * partIndices = nullptr ); //------------------------------------------------------------------------------ @@ -127,7 +127,7 @@ MATH_FUNC (size_t) DetachShells( MbFaceShell & shell, c3d::ShellsVector & parts, \ingroup Algorithms_3D */ // --- -MATH_FUNC (size_t) DetachShells( MbFaceShell & shell, c3d::ShellsSPtrVector & parts, bool sort, c3d::IndicesVector * partIndices = c3d_null ); +MATH_FUNC (size_t) DetachShells( MbFaceShell & shell, c3d::ShellsSPtrVector & parts, bool sort, c3d::IndicesVector * partIndices = nullptr ); //------------------------------------------------------------------------------ @@ -153,7 +153,7 @@ size_t CreateShells( const MbFaceShell & shell, ShellsVector & parts, bool sort { c3d::ShellSPtr outer( new MbFaceShell( shell ) ); // new shell on the same faces (новая оболочка с теми же гранями) - c3d::IndicesVector * partIndices = c3d_null; + c3d::IndicesVector * partIndices = nullptr; if ( ::DetachShells( *outer, parts, sort, partIndices ) > 0 ) { parts.push_back( outer ); @@ -1350,13 +1350,13 @@ c3d::SolidSPtr GetTransformedSolid( c3d::SolidSPtr & solid, MbeCopyMode & copyMo { c3d::SolidSPtr resSolid( solid ); - if ( (resSolid != c3d_null) && !matr.IsSingle() ) { + if ( (resSolid != nullptr) && !matr.IsSingle() ) { MbSNameMaker n( transformedMainName, MbSNameMaker::i_SideNone, 0 ); - MbSolid * resSolidPtr = c3d_null; + MbSolid * resSolidPtr = nullptr; TransformValues tv( matr ); ::TransformedSolid( *solid, cm_Copy, tv, n, resSolidPtr ); - if ( resSolidPtr != c3d_null ) { + if ( resSolidPtr != nullptr ) { resSolid = resSolidPtr; copyMode = cm_Same; } @@ -1380,10 +1380,10 @@ c3d::SolidSPtr GetTransformedSolid( c3d::SolidSPtr & solid, MbeCopyMode & copyMo */ // --- template -SPtr GetTransformedItem( SPtr & item, const MbMatrix3D & matr, MbRegDuplicate * iDupReg = c3d_null, MbRegTransform * iTransReg = c3d_null ) +SPtr GetTransformedItem( SPtr & item, const MbMatrix3D & matr, MbRegDuplicate * iDupReg = nullptr, MbRegTransform * iTransReg = nullptr ) { SPtr resItem( item ); - if ( (resItem != c3d_null) && !matr.IsSingle() ) { + if ( (resItem != nullptr) && !matr.IsSingle() ) { resItem = static_cast( &item->Duplicate( iDupReg ) ); resItem->Transform( matr, iTransReg ); } diff --git a/C3d/Include/action_analysis.h b/C3d/Include/action_analysis.h index ec649fc..92b44c9 100644 --- a/C3d/Include/action_analysis.h +++ b/C3d/Include/action_analysis.h @@ -60,7 +60,7 @@ typedef void( *SurfaceFunction )( const MbSurface & surf, // Поверхно MATH_FUNC( void ) MinSurfaceCurvature( const MbSurface & surf, const MbCartPoint & pnt, double & func, - MbVector * der = c3d_null ); + MbVector * der = nullptr ); //------------------------------------------------------------------------------ @@ -81,7 +81,7 @@ MATH_FUNC( void ) MinSurfaceCurvature( const MbSurface & surf, MATH_FUNC( void ) MaxSurfaceCurvature( const MbSurface & surf, const MbCartPoint & pnt, double & func, - MbVector * der = c3d_null ); + MbVector * der = nullptr ); //------------------------------------------------------------------------------ @@ -102,7 +102,7 @@ MATH_FUNC( void ) MaxSurfaceCurvature( const MbSurface & surf, MATH_FUNC( void ) GaussCurvature( const MbSurface & surf, const MbCartPoint & pnt, double & func, - MbVector * der = c3d_null ); + MbVector * der = nullptr ); //------------------------------------------------------------------------------ @@ -123,7 +123,7 @@ MATH_FUNC( void ) GaussCurvature( const MbSurface & surf, MATH_FUNC( void ) MeanCurvature( const MbSurface & surf, const MbCartPoint & pnt, double & func, - MbVector * der = c3d_null ); + MbVector * der = nullptr ); //------------------------------------------------------------------------------ @@ -144,7 +144,7 @@ MATH_FUNC( void ) MeanCurvature( const MbSurface & surf, MATH_FUNC( void ) UNormalCurvature( const MbSurface & surf, const MbCartPoint & pnt, double & func, - MbVector * der = c3d_null ); + MbVector * der = nullptr ); //------------------------------------------------------------------------------ @@ -165,7 +165,7 @@ MATH_FUNC( void ) UNormalCurvature( const MbSurface & surf, MATH_FUNC( void ) VNormalCurvature( const MbSurface & surf, const MbCartPoint & pnt, double & func, - MbVector * der = c3d_null ); + MbVector * der = nullptr ); //------------------------------------------------------------------------------ @@ -322,7 +322,7 @@ MATH_FUNC( void ) FacesMinMaxCurvature( const RPArray & faces, */ MATH_FUNC( double ) CurveOrientedCurvature( const MbCurve3D & curve, double & param, - const MbVector3D * planeNorm = c3d_null ); + const MbVector3D * planeNorm = nullptr ); //------------------------------------------------------------------------------ @@ -359,10 +359,10 @@ MATH_FUNC( void ) CurveMinMaxCurvature( const MbCurve3D & curve, double & maxParam, double & minCurv, double & minParam, - c3d::DoubleVector * bendPoints = c3d_null, - c3d::DoubleVector * maxPoints = c3d_null, - c3d::DoubleVector * minPoints = c3d_null, - c3d::DoublePairsVector * rapPoints = c3d_null ); + c3d::DoubleVector * bendPoints = nullptr, + c3d::DoubleVector * maxPoints = nullptr, + c3d::DoubleVector * minPoints = nullptr, + c3d::DoublePairsVector * rapPoints = nullptr ); //------------------------------------------------------------------------------ @@ -442,7 +442,7 @@ public: const MbFace * fp = edge.GetFacePlus(); const MbFace * fm = edge.GetFaceMinus(); - if ( fp != c3d_null && fm != c3d_null ) { + if ( fp != nullptr && fm != nullptr ) { const MbSurface & sp = fp->GetSurface().GetSurface(); const MbSurface & sm = fm->GetSurface().GetSurface(); @@ -457,11 +457,11 @@ public: dirMatch = ts_negative; } else { - intCurve = c3d_null; // parameter error + intCurve = nullptr; // parameter error } } - else if ( (fp != c3d_null) || (fm != c3d_null) ) { - const MbFace * f = (fp != c3d_null) ? fp : fm; + else if ( (fp != nullptr) || (fm != nullptr) ) { + const MbFace * f = (fp != nullptr) ? fp : fm; const MbSurface & s = f->GetSurface().GetSurface(); if ( &s == &surface1 && &s == &surface2 ) { @@ -484,13 +484,13 @@ public: dirMatch = ts_negative; } else { - intCurve = c3d_null; // parameter error + intCurve = nullptr; // parameter error } } } public: /// \ru Есть ли кривая пересечения? \en Does an intersection curve exist? - bool IsCurve() const { return (intCurve != c3d_null); } + bool IsCurve() const { return (intCurve != nullptr); } /// \ru Получить кривую пересечения? \en Get intersection curve. c3d::ConstIntersectionCurveSPtr GetCurve() const { return intCurve; } /// \ru Признак совпадения нормали первой поверхности и грани. \en The flag of the coincidence of the normal of the first surface and the corresponding face . diff --git a/C3d/Include/action_b_shaper.h b/C3d/Include/action_b_shaper.h index 98bb480..02a1bf0 100644 --- a/C3d/Include/action_b_shaper.h +++ b/C3d/Include/action_b_shaper.h @@ -341,8 +341,8 @@ public: To fit surface use corresponding methods SegmentMesh or FitSurfaceToSegment. \n \~ \param[in] idxSegment - \ru Индекс сегмента полигональной сетки. \en Index of a mesh segment. \~ - \return \ru Возвращает указатель на поверхность для сегмента, если поверхность определена, иначе - c3d_null. - \en Returns pointer to segment surface if it exists, else - c3d_null. \~ + \return \ru Возвращает указатель на поверхность для сегмента, если поверхность определена, иначе - nullptr. + \en Returns pointer to segment surface if it exists, else - nullptr. \~ \ingroup Polygonal_Objects */ virtual const MbSurface * GetSegmentSurface( size_t idxSegment ) const = 0; diff --git a/C3d/Include/action_curve.h b/C3d/Include/action_curve.h index f40036b..d9e15f6 100644 --- a/C3d/Include/action_curve.h +++ b/C3d/Include/action_curve.h @@ -443,7 +443,7 @@ MATH_FUNC (MbCurve *) DuplicateCurve( const MbCurve & curve, VERSION version = M DEPRECATE_DECLARE MATH_FUNC (MbContour *) DuplicateContour( const MbContour & cntr, bool modifySegments, - MbSNameMaker * names = c3d_null ); + MbSNameMaker * names = nullptr ); //------------------------------------------------------------------------------ @@ -469,7 +469,7 @@ MATH_FUNC (MbContour *) DuplicateContour( const MbContour & cntr, MATH_FUNC (MbContour *) DuplicateContour( const MbContour & cntr, bool modifySegments, VERSION version, - MbSNameMaker * names = c3d_null ); + MbSNameMaker * names = nullptr ); //------------------------------------------------------------------------------ @@ -802,7 +802,7 @@ MATH_FUNC (bool) IsLikeStraightLine( const MbCurve & curve, double eps ); DEPRECATE_DECLARE MATH_FUNC( MbContour * ) DeleteDegenerateSegments( const MbContour & cntr, bool modifySegments, - MbSNameMaker * names = c3d_null ); + MbSNameMaker * names = nullptr ); //------------------------------------------------------------------------------ /** \brief \ru Удалить вырожденные сегменты из контура. @@ -825,7 +825,7 @@ MATH_FUNC( MbContour * ) DeleteDegenerateSegments( const MbContour & cntr, MATH_FUNC( MbContour * ) DeleteDegenerateSegments( const MbContour & cntr, bool modifySegments, VERSION verison, - MbSNameMaker * names = c3d_null ); + MbSNameMaker * names = nullptr ); //------------------------------------------------------------------------------ diff --git a/C3d/Include/action_curve3d.h b/C3d/Include/action_curve3d.h index 16a3124..7ef9d9f 100644 --- a/C3d/Include/action_curve3d.h +++ b/C3d/Include/action_curve3d.h @@ -283,11 +283,11 @@ MATH_FUNC (MbResultType) SpiralCurve( const MbPlacement3D & place, \details \ru Создать спираль. \n Если spiralAxis == true, то lawCurve - определяет плоскую ось спирали. \n Если spiralAxis == false, то lawCurve - определяет закон изменения радиуса спирали. \n - Если lawCurve == c3d_null, то строится коническая спираль с углом конусности angle. \n + Если lawCurve == nullptr, то строится коническая спираль с углом конусности angle. \n \en Create a spiral. \n If 'spiralAxis' == true, 'lawCurve' determines the axis of a spiral. \n If spiralAxis == false, then 'lawCurve' - determines a radius law. \n - If lawCurve == c3d_null, a conical spiral is created with the specified taper angle. \n \~ + If lawCurve == nullptr, a conical spiral is created with the specified taper angle. \n \~ \param[in] point0 - \ru Начало локальной системы координат (ЛСК). \en The origin of local coordinate system (LCS). \~ \param[in] point1 - \ru Точка на оси Z ЛСК. @@ -644,7 +644,7 @@ MATH_FUNC (MbResultType) CreatePolyArcCurve3D( const MbCurve3D & curve, MATH_FUNC (bool) GetSpaceCurve( const MbItem & item, bool keepPlacement, SPtr & curve0, - std::vector< SPtr > * curves = c3d_null ); + std::vector< SPtr > * curves = nullptr ); //------------------------------------------------------------------------------- @@ -666,9 +666,9 @@ MATH_FUNC (bool) GetSpaceCurve( const MbItem & item, \param[in] deviationAngle - \ru Параметру точности. \en The parameter of accuracy. \~ \return \ru Возвращает указатель на построенную кривую с нулевум счетчиком ссылок \n - или c3d_null, если не удалось построить развертку для заданных параметров. + или nullptr, если не удалось построить развертку для заданных параметров. \en The pointer to the constructed curve with zero counter of references\n - return c3d_null, if unwrap curve can't be construvted for this parameters + return nullptr, if unwrap curve can't be construvted for this parameters \ingroup Curve3D_Modeling */ // --- diff --git a/C3d/Include/action_mesh.h b/C3d/Include/action_mesh.h index 02abe64..10eed33 100644 --- a/C3d/Include/action_mesh.h +++ b/C3d/Include/action_mesh.h @@ -61,8 +61,8 @@ MATH_FUNC (void) CalculatePolygon( const MbCurve & curve, локальной системы координат. \en Create a polygonal object for two-dimensional object in the XOY-plane of the local coordinate system. \~ - \param[in] obj - \ru Двумерный объект (если c3d_null, то объект не создаётся). - \en Two-dimensional object (if c3d_null, object isn't created). \~ + \param[in] obj - \ru Двумерный объект (если nullptr, то объект не создаётся). + \en Two-dimensional object (if nullptr, object isn't created). \~ \param[in] plane - \ru Локальная система координат. \en A local coordinate system. \~ \param[in] sag - \ru Максимальное отклонение полигонального объекта от оригинала по прогибу. diff --git a/C3d/Include/action_phantom.h b/C3d/Include/action_phantom.h index 176d456..e81bb05 100644 --- a/C3d/Include/action_phantom.h +++ b/C3d/Include/action_phantom.h @@ -184,7 +184,7 @@ MATH_FUNC (MbResultType) OffsetPhantom( const MbSolid & solid, const SweptValues & params, const MbSNameMaker & operNames, MbFaceShell *& result, - size_t * hpShellFaceInd = c3d_null ); // \ru Номер грани в исходной оболочки для построения хот-точки); \en The face number in the initial shell for a hot-point creation); + size_t * hpShellFaceInd = nullptr ); // \ru Номер грани в исходной оболочки для построения хот-точки); \en The face number in the initial shell for a hot-point creation); //------------------------------------------------------------------------------ @@ -261,7 +261,7 @@ MATH_FUNC (MbResultType) SmoothPositionData( const MbSolid & sol const SmoothValues & params, RPArray & result, double edgeParam = 0.5, - const MbCurveEdge * dimensionEdge = c3d_null ); + const MbCurveEdge * dimensionEdge = nullptr ); //------------------------------------------------------------------------------ @@ -293,7 +293,7 @@ MATH_FUNC (MbResultType) SmoothPositionData( const MbSolid & sol const SmoothValues & params, RPArray & result, double edgeParam = 0.5, - const MbCurveEdge * dimensionEdge = c3d_null ); + const MbCurveEdge * dimensionEdge = nullptr ); //------------------------------------------------------------------------------ diff --git a/C3d/Include/action_point.h b/C3d/Include/action_point.h index 70ce11b..4dae8eb 100644 --- a/C3d/Include/action_point.h +++ b/C3d/Include/action_point.h @@ -39,8 +39,8 @@ class MATH_CLASS MbFaceShell; \en Number of elements in the array. \~ \param[out] res - \ru Результат операции. \en The operation result. \~ - \return \ru Возвращает массив элементов, если он создан, или c3d_null в противном случае. - \en Returns an array of elements if it has been created, otherwise returns c3d_null. \~ + \return \ru Возвращает массив элементов, если он создан, или nullptr в противном случае. + \en Returns an array of elements if it has been created, otherwise returns nullptr. \~ \ingroup Algorithms_3D */ // --- @@ -48,11 +48,11 @@ template inline SArray * CreateArray( size_t cnt, MbResultType & res ) { SArray * arr = new SArray ( cnt, 1 ); - if ( arr != c3d_null && arr->GetAddr() == c3d_null ) { + if ( arr != nullptr && arr->GetAddr() == nullptr ) { delete arr; - arr = c3d_null; + arr = nullptr; } - if ( arr == c3d_null ) + if ( arr == nullptr ) res = rt_TooManyPoints; return arr; @@ -79,7 +79,7 @@ template inline bool ReserveArray( SArray & arr, size_t n, MbResultType & res ) { arr.Reserve( n ); - if ( arr.GetAddr() == c3d_null ) { + if ( arr.GetAddr() == nullptr ) { res = rt_TooManyPoints; return false; } @@ -107,7 +107,7 @@ template inline bool AddItem( SArray & arr, const Type & item, MbResultType & res ) { arr.Add( item ); - if ( arr.GetAddr() == c3d_null ) { + if ( arr.GetAddr() == nullptr ) { res = rt_TooManyPoints; return false; } diff --git a/C3d/Include/action_sheet.h b/C3d/Include/action_sheet.h index c887d64..752f159 100644 --- a/C3d/Include/action_sheet.h +++ b/C3d/Include/action_sheet.h @@ -640,7 +640,7 @@ MATH_FUNC (MbResultType) UnbendSheetSolid( MbSolid & sol const MbCartPoint & fixedPoint, const MbSNameMaker & nameMaker, MbSolid *& result, - RPArray * ribContours = c3d_null ); + RPArray * ribContours = nullptr ); //------------------------------------------------------------------------------ diff --git a/C3d/Include/action_solid.h b/C3d/Include/action_solid.h index efb10aa..604cbfd 100644 --- a/C3d/Include/action_solid.h +++ b/C3d/Include/action_solid.h @@ -180,7 +180,7 @@ MATH_FUNC (MbResultType) MeshSolid( const MbMesh & mesh, const GridsToShellValues & params, const MbSNameMaker & names, MbSolid *& result, - IProgressIndicator * prog = c3d_null ); + IProgressIndicator * prog = nullptr ); //------------------------------------------------------------------------------ @@ -202,7 +202,7 @@ MATH_FUNC (MbResultType) MeshSolid( const MbMesh & mesh, MATH_FUNC (MbResultType) GridSolid( const MbGrid & grid, const MbSNameMaker & names, MbSolid *& result, - IProgressIndicator * prog = c3d_null ); + IProgressIndicator * prog = nullptr ); //------------------------------------------------------------------------------ @@ -227,7 +227,7 @@ MATH_FUNC (MbResultType) GridSolid( const MbGrid & grid, const GridsToShellValues & params, const MbSNameMaker & names, MbSolid *& result, - IProgressIndicator * prog = c3d_null ); + IProgressIndicator * prog = nullptr ); //------------------------------------------------------------------------------ @@ -249,7 +249,7 @@ MATH_FUNC (MbResultType) GridSolid( const MbGrid & grid, MATH_FUNC (MbResultType) CollectionSolid( const MbCollection & grid, const MbSNameMaker & names, MbSolid *& result, - IProgressIndicator * progBar = c3d_null ); + IProgressIndicator * progBar = nullptr ); //------------------------------------------------------------------------------ @@ -636,8 +636,8 @@ MATH_FUNC (MbResultType) EvolutionSolid( const MbSweptData & sweptData \en An array of generating contours coordinate systems. \~ \param[in] c - \ru Множество образующих контуров. \en An array of generating contours. \~ - \param[in] spine - \ru Направляющая кривая (может быть c3d_null). - \en A guide curve (can be c3d_null). \~ + \param[in] spine - \ru Направляющая кривая (может быть nullptr). + \en A guide curve (can be nullptr). \~ \param[in] params - \ru Параметры операции. \en The operation parameters. \~ \param[in] ps - \ru Множество точек на образующих контурах, задающий их начальные точки. @@ -672,8 +672,8 @@ MATH_FUNC (MbResultType) LoftedSolid( SArray & pl, \en An array of generating contours coordinate systems. \~ \param[in] c - \ru Множество образующих контуров. \en An array of generating contours. \~ - \param[in] spine - \ru Осевая кривая (может быть c3d_null). - \en A guide curve (can be c3d_null). \~ + \param[in] spine - \ru Осевая кривая (может быть nullptr). + \en A guide curve (can be nullptr). \~ \param[in] params - \ru Параметры операции. \en The operation parameters. \~ \param[in] guideCurves - \ru Множество направляющих кривых, задающих траектории соответствующих точек контуров. @@ -693,7 +693,7 @@ MATH_FUNC (MbResultType) LoftedSolid( SArray & pl, // --- MATH_FUNC (MbResultType) LoftedSolid( SArray & pl, RPArray & c, - const MbCurve3D * spine, // осевая линия может быть c3d_null + const MbCurve3D * spine, // осевая линия может быть nullptr const LoftedValues & params, RPArray * guideCurves, SArray * ps, @@ -711,8 +711,8 @@ MATH_FUNC (MbResultType) LoftedSolid( SArray & pl, \en An array of surfaces of generating contours. \~ \param[in] c - \ru Множество образующих контуров. \en An array of generating contours. \~ - \param[in] spine - \ru Осевая кривая (может быть c3d_null). - \en A guide curve (can be c3d_null). \~ + \param[in] spine - \ru Осевая кривая (может быть nullptr). + \en A guide curve (can be nullptr). \~ \param[in] params - \ru Параметры операции. \en The operation parameters. \~ \param[in] guideCurves - \ru Множество направляющих кривых, задающих траектории соответствующих точек контуров. @@ -732,7 +732,7 @@ MATH_FUNC (MbResultType) LoftedSolid( SArray & pl, // --- MATH_FUNC (MbResultType) LoftedSolid( RPArray & surfs, RPArray & c, - const MbCurve3D * spine, // осевая линия может быть c3d_null + const MbCurve3D * spine, // осевая линия может быть nullptr const LoftedValues & params, RPArray * guideCurves, SArray * ps, @@ -967,8 +967,8 @@ MATH_FUNC(MbResultType) EvolutionResult( MbSolid & solid, \en An array of generating contours coordinate systems. \~ \param[in] c - \ru Множество образующих контуров. \en An array of generating contours. \~ - \param[in] spine - \ru Направляющая кривая (может быть c3d_null). - \en A guide curve (can be c3d_null). \~ + \param[in] spine - \ru Направляющая кривая (может быть nullptr). + \en A guide curve (can be nullptr). \~ \param[in] params - \ru Параметры операции. \en The operation parameters. \~ \param[in] oType - \ru Тип булевой операции. @@ -1020,8 +1020,8 @@ MATH_FUNC(MbResultType) LoftedResult( MbSolid & solid, \en An array of generating contours surfaces. \~ \param[in] c - \ru Множество образующих контуров. \en An array of generating contours. \~ - \param[in] spine - \ru Осевая кривая (может быть c3d_null). - \en A guide curve (can be c3d_null). \~ + \param[in] spine - \ru Осевая кривая (может быть nullptr). + \en A guide curve (can be nullptr). \~ \param[in] params - \ru Параметры операции. \en The operation parameters. \~ \param[in] oType - \ru Тип булевой операции. @@ -1989,7 +1989,7 @@ MATH_FUNC (MbResultType) UnionResult( MbSolid * solid, const MbSNameMaker & names, bool isArray, MbSolid *& result, - RPArray * notGluedSolids = c3d_null ); + RPArray * notGluedSolids = nullptr ); //------------------------------------------------------------------------------ @@ -2032,7 +2032,7 @@ MATH_FUNC (MbResultType) UnionSolid( RPArray & solids, const MbSNameMaker & names, bool isArray, MbSolid *& result, - RPArray * notGluedSolids = c3d_null ); + RPArray * notGluedSolids = nullptr ); //------------------------------------------------------------------------------ @@ -2392,8 +2392,8 @@ MATH_FUNC (MbResultType) ThinSolid( const MbSurface & surface, //------------------------------------------------------------------------------ /** \brief \ru Создать отверстие, карман, фигурный паз в теле. \en Create a hole, a pocket, a groove in the solid. \~ - \details \ru Cоздать отверстие, карман, фигурный паз в теле или создать cверло, бобышку, если solid==c3d_null. \n - \en Create a hole, a pocket, a groove in the solid or create a drill, a boss if 'solid' == c3d_null. \n \~ + \details \ru Cоздать отверстие, карман, фигурный паз в теле или создать cверло, бобышку, если solid==nullptr. \n + \en Create a hole, a pocket, a groove in the solid or create a drill, a boss if 'solid' == nullptr. \n \~ \param[in] solid - \ru Исходное тело. \en The source solid. \~ \param[in] sameShell - \ru Режим копирования тела. diff --git a/C3d/Include/action_surface.h b/C3d/Include/action_surface.h index e7b8249..ff5a701 100644 --- a/C3d/Include/action_surface.h +++ b/C3d/Include/action_surface.h @@ -694,28 +694,26 @@ MATH_FUNC (MbResultType) TriBezierSurface( ptrdiff_t k, \en Create a triangular B-spline surface. \~ \details \ru Создать треугольную В-сплайн поверхность по 3 точкам. \n \en Create a triangular B-spline surface from three points. \n \~ - \param[in] p0 - \ru Первая точка. - \en The first point. \~ - \param[in] p1 - \ru Вторая точка. - \en The second point. \~ - \param[in] p2 - \ru Третья точка. - \en The third point. \~ - \param[in] d - \ru Порядок поверхности. - \en The surface order. \~ - \param[out] resSurface - \ru Треугольная В-сплайн поверхность. - \en The triangular B-spline surface. \~ + \param[in] surface - \ru Исходная поверхность. + \en The initial surface. \~ + \param[in] degree - \ru Порядок поверхности. + \en The surface order. \~ + \param[in] uCount - \ru Число элементов вдоль первого направления. + \en The elements count along first direction. \~ + \param[in] vCount - \ru Число элементов вдоль второго направления. + \en The elements count along second direction. \~ + \param[out] result - \ru Симплексная поверхность. + \en The simplex surface. \~ \result \ru Возвращает код результата операции. \en Returns operation result code. \~ \ingroup Surface_Modeling */ // --- -MATH_FUNC (MbResultType) TriSplineSurface( const MbCartPoint3D & p0, - const MbCartPoint3D & p1, - const MbCartPoint3D & p2, - const MbCartPoint3D & p3, - ptrdiff_t d, - ptrdiff_t count, - MbSurface *& resSurface ); +MATH_FUNC (MbResultType) SimplexSurface( const MbSurface & surface, + size_t degree, + size_t uCount, + size_t vCount, + MbSurface *& result ); //------------------------------------------------------------------------------ @@ -723,10 +721,10 @@ MATH_FUNC (MbResultType) TriSplineSurface( const MbCartPoint3D & p0, \en Create a characteristic polyline of a spline surface. \~ \details \ru Построить характеристическую ломаную сплайновой поверхности. \n Функция работает с поверхностями типа st_SplineSurface, st_HermitSurface, - st_TriBezierSurface, st_TriSplineSurface. \n + st_TriBezierSurface, st_SimplexSurface. \n \en Create a characteristic polyline of a spline surface. \n The function accepts the surfaces of types st_SplineSurface, st_HermitSurface, - st_TriBezierSurface, st_TriSplineSurface. \n \~ + st_TriBezierSurface, st_SimplexSurface. \n \~ \param[in] surf - \ru Поверхность. \en The surface. \~ \param[out] segments - \ru Сегменты характеристической ломаной. @@ -798,8 +796,8 @@ MATH_FUNC (MbResultType) MiddlePlaces( const MbCurve3D & curve1 \en The first guide curve. \~ \param[in] g2 - \ru Вторая направляющая кривая (g1==g2 совпадает с первой при cs_Round). \en The second guide curve (g1==g2 the same first guide for st_Round). \~ - \param[in] c0 - \ru Дополнительная направляющая кривая (может быть c3d_null). - \en The additional guide curve (may be c3d_null). \~ + \param[in] c0 - \ru Дополнительная направляющая кривая (может быть nullptr). + \en The additional guide curve (may be nullptr). \~ \param[in] form - \ru Форма сечения поверхности (0, 1, 2, 3). \en The form of the surface section (0, 1, 2, 3). \~ \param[in] sense - \ru Направление нормали поверхности направляющей кривой (для guide1==guide2). diff --git a/C3d/Include/action_surface_curve.h b/C3d/Include/action_surface_curve.h index f982e6d..4039046 100644 --- a/C3d/Include/action_surface_curve.h +++ b/C3d/Include/action_surface_curve.h @@ -224,8 +224,8 @@ MATH_FUNC (MbResultType) OffsetCurve( const MbCurve3D & curve, //------------------------------------------------------------------------------ /** \brief \ru Создать проекцию кривой на поверхность. \en Create a curve projection onto the surface. \~ - \details \ru Создать проекцию кривой curve на поверхность surface (направление проецирования direction может быть c3d_null). \n - \en Create the projection of a curve onto surface 'surface' (the projection direction 'direction' can be c3d_null). \n \~ + \details \ru Создать проекцию кривой curve на поверхность surface (направление проецирования direction может быть nullptr). \n + \en Create the projection of a curve onto surface 'surface' (the projection direction 'direction' can be nullptr). \n \~ \param[in] surface - \ru Поверхность для проецирования. \en The surface to project onto. \~ \param[in] curve - \ru Проецируемая кривая. @@ -257,8 +257,8 @@ MATH_FUNC (MbResultType) CurveProjection( const MbSurface & surface, //------------------------------------------------------------------------------ /** \brief \ru Создать проекцию кривой на поверхность. \en Create a curve projection onto the surface. \~ - \details \ru Создать проекцию кривой curve на поверхность surface (направление проецирования direction может быть c3d_null). \n - \en Create the projection of a curve onto surface 'surface' (the projection direction 'direction' can be c3d_null). \n \~ + \details \ru Создать проекцию кривой curve на поверхность surface (направление проецирования direction может быть nullptr). \n + \en Create the projection of a curve onto surface 'surface' (the projection direction 'direction' can be nullptr). \n \~ \param[in] surface - \ru Поверхность для проецирования. \en The surface to project onto. \~ \param[in] curve - \ru Проецируемая кривая. @@ -1159,7 +1159,7 @@ MATH_FUNC (MbResultType) ConnectingSpline( const MbCurve3D & curve1, double t1, что начало кривой сопряжения будет находится в точке с параметором t1, t1 и t2 - параметры кривых curve1 и curve2, в соответствующих точках которых начинается и заканчивается скругление. \n Параметр sense - прямое или обратное направление кривой скругления. \n - Кривая filletCurve - это кривая сопряжения, дуга (когда surface == c3d_null) или кривая на поверхности цилиндра surface. \n + Кривая filletCurve - это кривая сопряжения, дуга (когда surface == nullptr) или кривая на поверхности цилиндра surface. \n Поверхность surface - это цилиндрическая поверхность, на которой строится кривая сопряжения в общем случае. Для управления жизненным циклом поверхномти следует миспользовать методы ::AddRefItem(surface) и ::ReleaseItem(surface). \n \en Create a fillet curve for curves. \n @@ -1175,7 +1175,7 @@ MATH_FUNC (MbResultType) ConnectingSpline( const MbCurve3D & curve1, double t1, that the fillet curve start is at the point with parameter t1, t1 and t2 are parameters of curves 'curve1' and 'curve2' which correspond to the start point and the end point of the fillet. \n Parameter 'sense' determines forward or backward orientation of the fillet curve. \n - Curve filletCurve is a fillet curve, an arc (when 'surface' == c3d_null) or a curve on a cylindric surface 'surface'. \n + Curve filletCurve is a fillet curve, an arc (when 'surface' == nullptr) or a curve on a cylindric surface 'surface'. \n Surface 'surface' is a cylindric surface on which the fillet curve is constructed in general case. Use ::AddRefItem(surface) and ::ReleaseItem(surface) methods to manage the surface lifecycle. \n \~ \param[in] curve1 - \ru Соединяемая кривая 1. @@ -1200,8 +1200,8 @@ MATH_FUNC (MbResultType) ConnectingSpline( const MbCurve3D & curve1, double t1, \en The fillet type. \~ \param[in] names - \ru Именователь кривых каркаса. \en An object defining the frame curves names. \~ - \param[out] surface - \ru Поверхность, которая будет создана и на которой базируется соединительная кривая, (может быть возращён c3d_null). - \en A surface on which the fillet curve is based on, it will be created by the method (can be c3d_null). \~ + \param[out] surface - \ru Поверхность, которая будет создана и на которой базируется соединительная кривая, (может быть возращён nullptr). + \en A surface on which the fillet curve is based on, it will be created by the method (can be nullptr). \~ \param[out] result - \ru Каркас с построенными кривыми. \en The frame with the constructed curves. \~ \return \ru Возвращает код результата операции. diff --git a/C3d/Include/alg_base.h b/C3d/Include/alg_base.h index 0a4b105..d9f40e2 100644 --- a/C3d/Include/alg_base.h +++ b/C3d/Include/alg_base.h @@ -603,7 +603,7 @@ bool IsPlanar( const SpacePointsVector & pnts, MbPlacement3D * place, double mEp } } } - if ( isPlanar && place != c3d_null ) + if ( isPlanar && place != nullptr ) place->Init( wrkPlace ); } } diff --git a/C3d/Include/alg_curve_delete_part.h b/C3d/Include/alg_curve_delete_part.h index 3e8d763..320f7ee 100644 --- a/C3d/Include/alg_curve_delete_part.h +++ b/C3d/Include/alg_curve_delete_part.h @@ -92,8 +92,8 @@ MATH_FUNC (MbeState) DeleteCurvePart( const MbCartPoint & p1, \en The point indicating the piece of a curve to be kept. \~ \param[in, out] curve - \ru Изменяемая кривая. \en The curve to be modified. \~ - \param[in, out] part2 - \ru Всегда c3d_null. - \en This value is always c3d_null. \~ + \param[in, out] part2 - \ru Всегда nullptr. + \en This value is always nullptr. \~ \return \ru Состояние кривой после ее модификации. \en The state of a curve after its modification. \~ \warning \ru Для внутреннего использования. @@ -124,8 +124,8 @@ MATH_FUNC (MbeState) TrimmCurvePart( List & curveList, \en The point indicating the piece of a closed curve to be kept \~ \param[in, out] curve - \ru Изменяемая кривая. \en The curve to be modified. \~ - \param[in, out] part2 - \ru Всегда c3d_null. - \en This value is always c3d_null. \~ + \param[in, out] part2 - \ru Всегда nullptr. + \en This value is always nullptr. \~ \return \ru Состояние кривой после ее модификации. \en The state of a curve after its modification. \~ \warning \ru Для внутреннего использования. @@ -155,8 +155,8 @@ MATH_FUNC (MbeState) TrimmCurvePart( const MbCartPoint & p1, \en Boundary curve for justification. \~ \param[in] pnt - \ru Точка для выбора нужной части кривой. \en The point for selecting the piece of a curve. \~ - \param[in, out] part2 - \ru Всегда c3d_null. - \en This value is always c3d_null. \~ + \param[in, out] part2 - \ru Всегда nullptr. + \en This value is always nullptr. \~ \return \ru Состояние кривой после ее модификации. \en The state of a curve after modification. \~ \warning \ru Для внутреннего использования. @@ -222,8 +222,8 @@ MATH_FUNC (MbeState) BreakByClosedCurves( MbCurve & curve, const RPArray & limits, bool inside, PArray & part2, - SArray * cross = c3d_null, - bool * isEqualCurve = c3d_null, + SArray * cross = nullptr, + bool * isEqualCurve = nullptr, bool cutOnCurve = false ); diff --git a/C3d/Include/alg_dimension.h b/C3d/Include/alg_dimension.h index 11ab760..86fcc0f 100644 --- a/C3d/Include/alg_dimension.h +++ b/C3d/Include/alg_dimension.h @@ -440,7 +440,7 @@ MATH_FUNC (MbeProcessState) MinMaxDistances( const MbSurface & surface1, MbMinMaxSurfDists & allResults, MbMinMaxSurfDists & minResults, MbMinMaxSurfDists & maxResults, - IProgressIndicator * indicator = c3d_null ); + IProgressIndicator * indicator = nullptr ); #endif // __ALG_DIMENSION_H diff --git a/C3d/Include/alg_draw.h b/C3d/Include/alg_draw.h index 538675f..2e0d2dd 100644 --- a/C3d/Include/alg_draw.h +++ b/C3d/Include/alg_draw.h @@ -1028,7 +1028,7 @@ void DrawVertexEdges( const Vertex * vertex, int vR, int vG, int vB, MbStepData stepData( ist_SpaceStep, Math::visualSag ); MbFormNote note(true, false); for ( size_t k = 0, cnt = edges.size(); k < cnt; ++k ) { - if ( edges[k] != c3d_null ) { + if ( edges[k] != nullptr ) { edges[k]->GetCurve().CalculateMesh( stepData, note, edgeMesh ); DrawGI::DrawMesh( &edgeMesh, TRGB_WHITE ); DrawGI::DrawMesh( &edgeMesh, eR, eG, eB ); diff --git a/C3d/Include/alg_indicator.h b/C3d/Include/alg_indicator.h index 658a593..dfda2a8 100644 --- a/C3d/Include/alg_indicator.h +++ b/C3d/Include/alg_indicator.h @@ -124,7 +124,7 @@ public: }; -#define EMPTY_STR StrData( c3d_null ) ///< \ru Создание пустой строки \en Creation of an empty string +#define EMPTY_STR StrData( nullptr ) ///< \ru Создание пустой строки \en Creation of an empty string //------------------------------------------------------------------------------ @@ -279,14 +279,14 @@ MATH_FUNC (ProgressBarWrapper *) CreateProgressBar( IProgressIndicator * progInd \en The wrapper of the execution progress indicator. \~ \param[in] msg - \ru Данные о строке. \en Data of a string \~ - \return \ru true, если progBar != c3d_null и удалось задать имя процесса. + \return \ru true, если progBar != nullptr и удалось задать имя процесса. \en true if 'progBar' is not null and the process name is successfully set. \~ \ingroup Base_Items */ // --- inline bool SetProgressBarName( ProgressBarWrapper * progBar, IStrData & msg ) { - if ( progBar != c3d_null ) + if ( progBar != nullptr ) return progBar->SetName( msg ); return false; } @@ -308,7 +308,7 @@ inline bool SetProgressBarName( ProgressBarWrapper * progBar, IStrData & msg ) // --- inline bool SetProgressBarValue( ProgressBarWrapper * progBar, size_t v ) { - if ( progBar != c3d_null && !progBar->IsCancel() ) + if ( progBar != nullptr && !progBar->IsCancel() ) return progBar->SetProgress( v ); return false; } @@ -328,7 +328,7 @@ inline bool SetProgressBarValue( ProgressBarWrapper * progBar, size_t v ) // --- inline void FinishProgressBar( ProgressBarWrapper * progBar ) { - if ( progBar != c3d_null ) { + if ( progBar != nullptr ) { if ( progBar->IsCancel() ) progBar->Stop(); else progBar->Success(); } @@ -347,7 +347,7 @@ inline void FinishProgressBar( ProgressBarWrapper * progBar ) // --- inline bool StopProgressBar( ProgressBarWrapper * progBar ) { - if ( progBar != c3d_null && progBar->IsCancel() ) { + if ( progBar != nullptr && progBar->IsCancel() ) { progBar->Stop(); return true; } @@ -362,14 +362,14 @@ inline bool StopProgressBar( ProgressBarWrapper * progBar ) \en The wrapper of the execution progress indicator. \~ \param[in] useParentName - \ru Флаг использования имени родителя. \en The flag of using the parent name. \~ - \return \ru true, если progBar != c3d_null. + \return \ru true, если progBar != nullptr. \en true if 'progBar' is not null. \~ \ingroup Base_Items */ // --- inline bool UseParentName( ProgressBarWrapper * progBar, bool useParentName ) { - if ( progBar != c3d_null ) { + if ( progBar != nullptr ) { progBar->UseParentName( useParentName ); return true; } @@ -389,7 +389,7 @@ inline bool UseParentName( ProgressBarWrapper * progBar, bool useParentName ) // --- inline bool IsParentNameUsed( const ProgressBarWrapper * progBar ) { - if ( progBar != c3d_null ) + if ( progBar != nullptr ) return progBar->IsParentNameUsed(); return false; diff --git a/C3d/Include/alg_mesh_to_brep.h b/C3d/Include/alg_mesh_to_brep.h index fec6646..08c8433 100644 --- a/C3d/Include/alg_mesh_to_brep.h +++ b/C3d/Include/alg_mesh_to_brep.h @@ -76,7 +76,7 @@ MbFaceShell * ConvertGridToShell( const MbGrid & grid, const GridsToShellValues & params, const MbSNameMaker & snMaker, MbResultType & res, - IProgressIndicator * progBar = c3d_null ); + IProgressIndicator * progBar = nullptr ); //------------------------------------------------------------------------------ @@ -86,7 +86,7 @@ MbFaceShell * ConvertMeshToShell( const MbMesh & mesh, const GridsToShellValues & params, const MbSNameMaker & snMaker, MbResultType & res, - IProgressIndicator * progBar = c3d_null ); + IProgressIndicator * progBar = nullptr ); //------------------------------------------------------------------------------ diff --git a/C3d/Include/alg_nurbs_conic.h b/C3d/Include/alg_nurbs_conic.h index d93d98f..4984f49 100644 --- a/C3d/Include/alg_nurbs_conic.h +++ b/C3d/Include/alg_nurbs_conic.h @@ -57,9 +57,9 @@ class MbVector3D; \en The discriminant is less than 1. Otherwise it will be set to 0.99999999 automatically. \~ \return \ru Указатель на построенную кривую \n - c3d_null, если не удалось построить конику для заданных параметров. + nullptr, если не удалось построить конику для заданных параметров. \en The pointer to the constructed curve \n - is c3d_null if a try to construct a conic for a given parameters has failed. \~ + is nullptr if a try to construct a conic for a given parameters has failed. \~ \ingroup Curve3D_Modeling */ // --- @@ -87,9 +87,9 @@ MATH_FUNC ( MbCurve3D * ) NurbsConic_1( const MbCartPoint3D & mbPoint0, const Mb \en The discriminant is less than 1. Otherwise it will be set to 0.99999999 automatically. \~ \return \ru Указатель на построенную кривую \n - c3d_null, если не удалось построить конику для заданных параметров. + nullptr, если не удалось построить конику для заданных параметров. \en The pointer to the constructed curve \n - is c3d_null if a try to construct a conic for a given parameters has failed. \~ + is nullptr if a try to construct a conic for a given parameters has failed. \~ \ingroup Curve_Modeling */ // --- @@ -113,9 +113,9 @@ MATH_FUNC ( MbCurve * ) NurbsConic_1( const MbCartPoint & mbPoint0, const MbCart \param[in] mbVertex - \ru Координаты вершины угла, в который надо вписать конику. \en Coordinates of the vertex of angle which should be inscribed into the conic. \~ \return \ru Указатель на построенную кривую \n - c3d_null, если не удалось постороить конику для заданных параметров. + nullptr, если не удалось постороить конику для заданных параметров. \en The pointer to the constructed curve \n - is c3d_null if a try to construct a conic for given parameters has failed. \~ + is nullptr if a try to construct a conic for given parameters has failed. \~ \ingroup Curve3D_Modeling */ // --- @@ -138,9 +138,9 @@ MATH_FUNC ( MbCurve3D * ) NurbsConic_2( std::vector & vmbConicPoi \param[in] mbVertex - \ru Координаты вершины угла, в который надо вписать конику. \en Coordinates of the vertex of angle which should be inscribed into the conic. \~ \return \ru Указатель на построенную кривую \n - c3d_null, если не удалось постороить конику для заданных параметров. + nullptr, если не удалось постороить конику для заданных параметров. \en The pointer to the constructed curve \n - is c3d_null if a try to construct a conic for given parameters has failed. \~ + is nullptr if a try to construct a conic for given parameters has failed. \~ \ingroup Curve_Modeling */ // --- @@ -165,9 +165,9 @@ MATH_FUNC ( MbCurve * ) NurbsConic_2( std::vector & vmbConicPoints, \param[in] mbTangent2 - \ru Наклон в конце кривой. \en Inclination at end of a curve. \~ \return \ru Указатель на построенную кривую \n - c3d_null, если не удалось постороить конику для заданных параметров. + nullptr, если не удалось постороить конику для заданных параметров. \en The pointer to the constructed curve \n - is c3d_null if a try to construct a conic for given parameters has failed. \~ + is nullptr if a try to construct a conic for given parameters has failed. \~ \ingroup Curve3D_Modeling */ // --- @@ -193,9 +193,9 @@ MATH_FUNC ( MbCurve3D * ) NurbsConic_3( const std::vector & vmbCo \param[in] mbTangent2 - \ru Наклон в конце кривой. \en Inclination at end of a curve. \~ \return \ru Указатель на построенную кривую \n - c3d_null, если не удалось постороить конику для заданных параметров. + nullptr, если не удалось постороить конику для заданных параметров. \en The pointer to the constructed curve \n - is c3d_null if a try to construct a conic for given parameters has failed. \~ + is nullptr if a try to construct a conic for given parameters has failed. \~ \ingroup Curve_Modeling */ // --- @@ -224,9 +224,9 @@ MATH_FUNC ( MbCurve * ) NurbsConic_3( const std::vector & vmbConicP \en The discriminant is less than 1. Otherwise it will be set to 0.99999999 automatically. \~ \return \ru Указатель на построенную кривую \n - c3d_null, если не удалось построить конику для заданных параметров. + nullptr, если не удалось построить конику для заданных параметров. \en The pointer to the constructed curve \n - is c3d_null if a try to construct a conic for given parameters has failed. \~ + is nullptr if a try to construct a conic for given parameters has failed. \~ \ingroup Curve3D_Modeling */ // --- @@ -256,9 +256,9 @@ MATH_FUNC ( MbCurve3D * ) NurbsConic_4( const MbCartPoint3D & mbPoint1, const Mb \en The discriminant is less than 1. Otherwise it will be set to 0.99999999 automatically. \~ \return \ru Указатель на построенную кривую \n - c3d_null, если не удалось построить конику для заданных параметров. + nullptr, если не удалось построить конику для заданных параметров. \en The pointer to the constructed curve \n - is c3d_null if a try to construct a conic for given parameters has failed. \~ + is nullptr if a try to construct a conic for given parameters has failed. \~ \ingroup Curve_Modeling */ // --- @@ -288,9 +288,9 @@ MATH_FUNC ( MbCurve * ) NurbsConic_4( const MbCartPoint & mbPoint1, const MbCart \param[in] tanPntNb - \ru Номер точке, в которой задан наклон. \en Point number at which the inclination is specified. \~ \return \ru Указатель на построенную кривую \n - c3d_null, если не удалось постороить конику для заданных параметров. + nullptr, если не удалось постороить конику для заданных параметров. \en The pointer to the constructed curve \n - is c3d_null if a try to construct a conic for given parameters has failed. \~ + is nullptr if a try to construct a conic for given parameters has failed. \~ \ingroup Curve3D_Modeling */ // --- @@ -319,9 +319,9 @@ MATH_FUNC ( MbCurve3D * ) NurbsConic_5( const std::vector & vmbCo \param[in] tanPntNb - \ru Номер точке, в которой задан наклон. \en Point number at which the inclination is specified. \~ \return \ru Указатель на построенную кривую \n - c3d_null, если не удалось постороить конику для заданных параметров. + nullptr, если не удалось постороить конику для заданных параметров. \en The pointer to the constructed curve \n - is c3d_null if a try to construct a conic for given parameters has failed. \~ + is nullptr if a try to construct a conic for given parameters has failed. \~ \ingroup Curve_Modeling */ // --- @@ -342,9 +342,9 @@ MATH_FUNC ( MbCurve * ) NurbsConic_5( const std::vector & vmbConicP \en The container for points of a conic: the first point is start point, the last point is end point. there should be exactly 5 points. \~ \return \ru Указатель на построенную кривую \n - c3d_null, если не удалось постороить конику для заданных параметров. + nullptr, если не удалось постороить конику для заданных параметров. \en The pointer to the constructed curve \n - is c3d_null if a try to construct a conic for given parameters has failed. \~ + is nullptr if a try to construct a conic for given parameters has failed. \~ \ingroup Curve3D_Modeling */ // --- @@ -365,9 +365,9 @@ MATH_FUNC ( MbCurve3D * ) NurbsConic_6( const std::vector & vmbCo \en The container for points of a conic: the first point is start point, the last point is end point. there should be exactly 5 points. \~ \return \ru Указатель на построенную кривую \n - c3d_null, если не удалось постороить конику для заданных параметров. + nullptr, если не удалось постороить конику для заданных параметров. \en The pointer to the constructed curve \n - is c3d_null if a try to construct a conic for given parameters has failed. \~ + is nullptr if a try to construct a conic for given parameters has failed. \~ \ingroup Curve_Modeling */ // --- diff --git a/C3d/Include/alg_polyline.h b/C3d/Include/alg_polyline.h index b6732f8..068d953 100644 --- a/C3d/Include/alg_polyline.h +++ b/C3d/Include/alg_polyline.h @@ -43,14 +43,14 @@ class MATH_CLASS MbCubicSpline3D; радиус скругления в этой точке. При создании заполняются поля m_lineSeg и m_arcSeg. m_lineSeg - это прямолинейный сегмент из этой точки в следующую. Для последней точки и замкнутой ломаной - из последней в первую. m_arcSeg - дуга скругления в данной точке. - Если какой-то сегмент был полностью удален или не создан, то его указатель должен быть c3d_null. + Если какой-то сегмент был полностью удален или не создан, то его указатель должен быть nullptr. Объектами m_lineSeg и m_arcSeg не владеет, поэтому и не удаляет их. Объекты из полилинии. \en Some points may be deleted while the construction, therefore the old index is entered, it is filled and used in a model. Parameters of a point are its coordinates and fillet radius in this point. In a time of creation the fields 'm_lineSeg' and 'm_lineSeg' are being filled. 'm_lineSeg' is the straight-line segment from this point to the next point. For the last point and a closed polyline - from the last point to the first point. 'm_arcSeg'is the arc of a fillet in the given point. - If a segment has been fully deleted or it was not created then the pointer should be c3d_null. + If a segment has been fully deleted or it was not created then the pointer should be nullptr. Object 'm_lineSeg' and 'm_arcSeg' are not owned, therefore they are not deleted. Objects from a polyline. \~ \ingroup Data_Structures */ @@ -69,8 +69,8 @@ public: : m_oldIndex( SYS_MAX_T ) , m_point () , m_radius ( 0.0 ) - , m_lineSeg ( c3d_null ) - , m_arcSeg ( c3d_null ) + , m_lineSeg ( nullptr ) + , m_arcSeg ( nullptr ) {} /// \ru Конструктор копирования. \en Copy constructor. Polyline3DPoint( const Polyline3DPoint & other ) @@ -250,9 +250,9 @@ MATH_FUNC (void) CreateSmoothFromBezier( const MbBezier & bez, RPArray /** \brief \ru Создать кривую заданного типа базе NURBS-кривой. \en Create a curve of a given type as NURBS-curve. \~ \details \ru Работает для двух типов: pt_LineSegment и pt_Arc. Если не удалось - аппроксимировать с заданной точностью функция вернет c3d_null. + аппроксимировать с заданной точностью функция вернет nullptr. \en It works for the two types: 'pt_LineSegment' and 'pt_Arc'. If approximation with the given tolerance has failed - then the function returns c3d_null. \~ + then the function returns nullptr. \~ \param[in] nurbs - \ru Исходная NURBS-кривая. \en The initial NURBS-curve. \~ \param[in] type - \ru Тип кривой, которую требуется создать. @@ -288,7 +288,7 @@ MATH_FUNC (MbCurve *) ConvertNurbsToCurveOfType( const MbNurbs & nurbs, MbePlane */ // --- MATH_FUNC (MbCurve *) GetFlatCurve( const MbCurve3D & curve3D, const MbMatrix3D & into, - MbRect1D * pRgn = c3d_null, VERSION version = Math::DefaultMathVersion() ); + MbRect1D * pRgn = nullptr, VERSION version = Math::DefaultMathVersion() ); //------------------------------------------------------------------------------ diff --git a/C3d/Include/assembly.h b/C3d/Include/assembly.h index 7f94882..c5f2b69 100644 --- a/C3d/Include/assembly.h +++ b/C3d/Include/assembly.h @@ -95,10 +95,10 @@ public: // \ru Общие функции геометрического объекта \en Common functions of a geometric object virtual MbeSpaceType IsA() const; // \ru Тип объекта. \en An object type. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * iReg = c3d_null ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move( const MbVector3D &, MbRegTransform * iReg = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. - virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * iReg = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate about an axis. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * iReg = nullptr ) const; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * iReg = nullptr ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move( const MbVector3D &, MbRegTransform * iReg = nullptr ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. + virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * iReg = nullptr ); // \ru Повернуть вокруг оси. \en Rotate about an axis. virtual bool IsSame( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными? \en Are the objects equal? virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными? \en Are the objects similar? virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать объекты равным \en Make the objects equal @@ -152,11 +152,11 @@ public: virtual const MbItem * GetItemByName( SimpleName n, MbPath & path, MbMatrix3D & from ) const; // \ru Преобразовать согласно матрице c использованием регистратора селектированные содержимые объекты. \en Transform selected objects according to the matrix using the registrator. - virtual void TransformSelected( const MbMatrix3D & matr, MbRegTransform * iReg = c3d_null ); + virtual void TransformSelected( const MbMatrix3D & matr, MbRegTransform * iReg = nullptr ); // \ru Сдвинуть вдоль вектора с использованием регистратора селектированные содержимые объекты. \en Move selected objects along the vector using the registrator. - virtual void MoveSelected( const MbVector3D & to, MbRegTransform * iReg = c3d_null ); + virtual void MoveSelected( const MbVector3D & to, MbRegTransform * iReg = nullptr ); // \ru Повернуть вокруг оси на заданный угол с использованием регистратора селектированные содержимые объекты. \en Rotate selected objects about the axis by the given angle using the registrator. - virtual void RotateSelected( const MbAxis3D & axis, double angle, MbRegTransform * iReg = c3d_null ); + virtual void RotateSelected( const MbAxis3D & axis, double angle, MbRegTransform * iReg = nullptr ); /// \ru Отдать селектированные содержимые объекты. \en Get selected objects. bool DetachSelected( RPArray & items, SArray & matrs, bool selected = true ); /// \ru Отцепить все видимые или невидимые объекты. \en Detach all visible or invisible objects. \~ @@ -313,8 +313,8 @@ template MbAssembly::MbAssembly( const ItemsVector & items ) : MbItem() , assemblyItems() - , constraintSystem( c3d_null ) - , m_reactor( c3d_null ) + , constraintSystem( nullptr ) + , m_reactor( nullptr ) { #ifdef C3D_DEBUG // Check a condition of the single owner. @@ -339,7 +339,7 @@ MbAssembly::MbAssembly( const ItemsVector & items ) template void MbAssembly::_Init( const ItemsVector & items ) { - C3D_ASSERT( assemblyItems.empty() && (constraintSystem == c3d_null) ); + C3D_ASSERT( assemblyItems.empty() && (constraintSystem == nullptr) ); SimpleName idCounter = 0; for ( size_t i = 0, iCount = items.size(); i < iCount; ++i ) @@ -386,7 +386,7 @@ void MbAssembly::GetFacesSet( FacesVector & faces ) const template void MbInstance::GetFacesSet( FacesVector & faces ) const { - if ( item != c3d_null ) { + if ( item != nullptr ) { if ( item->IsA() == st_Solid ) static_cast( *item ).GetFacesSet( faces ); else if ( item->IsA() == st_Assembly ) diff --git a/C3d/Include/assisting_item.h b/C3d/Include/assisting_item.h index 06a7861..ab9ba53 100644 --- a/C3d/Include/assisting_item.h +++ b/C3d/Include/assisting_item.h @@ -51,10 +51,10 @@ public : // \ru Общие функции геометрического объекта. \en Common functions of a geometric object. virtual MbeSpaceType IsA() const; // \ru Тип объекта. \en An object type. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate about an axis. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate about an axis. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными? \en Whether the objects are equal? virtual bool IsSimilar( const MbSpaceItem & init ) const; // \ru Являются ли объекты подобными? \en Whether the objects are similar? virtual bool SetEqual ( const MbSpaceItem & init ); // \ru Сделать объекты равным. \en Make the objects equal. diff --git a/C3d/Include/attr_color.h b/C3d/Include/attr_color.h index 6516b24..6f4e050 100644 --- a/C3d/Include/attr_color.h +++ b/C3d/Include/attr_color.h @@ -185,7 +185,7 @@ public : virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. @@ -234,7 +234,7 @@ public : // \ru Общие функции объекта \en Common functions of object. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. @@ -280,7 +280,7 @@ public : // \ru Общие функции объекта \en Common functions of object. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. @@ -333,7 +333,7 @@ public : // \ru Общие функции объекта \en Common functions of object. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. @@ -414,7 +414,7 @@ public : // \ru Общие функции объекта \en Common functions of object. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. diff --git a/C3d/Include/attr_common_attribute.h b/C3d/Include/attr_common_attribute.h index f8a479b..2559df1 100644 --- a/C3d/Include/attr_common_attribute.h +++ b/C3d/Include/attr_common_attribute.h @@ -37,7 +37,7 @@ protected : public : virtual MbeAttributeType AttributeFamily() const; // \ru Выдать тип атрибута. \en Get attribute type. virtual MbeAttributeType AttributeType() const = 0; // \ru Выдать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ) = 0; // \ru Инициализировать данные по присланным. \en Initialize data. @@ -46,13 +46,13 @@ public : // \ru Выполнить действия при конвертации владельца. \en Perform actions when converting the owner. virtual void OnConvertOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); // \ru Выполнить действия при трансформировании владельца. \en Perform actions when transforming the owner. - virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = c3d_null ); + virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Выполнить действия при перемещении владельца. \en Perform actions when moving the owner. - virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = c3d_null ); + virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = nullptr ); // \ru Выполнить действия при вращении владельца. \en Perform actions when rotating the owner. - virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Выполнить действия при копировании владельца. \en Perform actions when copying the owner. - virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = c3d_null ); + virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = nullptr ); // \ru Выполнить действия при объединении владельца. \en Perform actions when merging he owner. virtual void OnMergeOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); // \ru Выполнить действия при замене владельца. \en Perform actions when replacing the owner. @@ -101,7 +101,7 @@ public: public: virtual MbeAttributeType AttributeType() const; // \ru Выдать подтип атрибута. \en Get subtype of an attribute. virtual void GetCharValue( TCHAR * v ) const; // \ru Выдать строковое значение свойства. \en Get a string value of the property. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. @@ -137,7 +137,7 @@ public: public: virtual MbeAttributeType AttributeType() const; // \ru Выдать подтип атрибута. \en Get subtype of an attribute. virtual void GetCharValue( TCHAR * v ) const; // \ru Выдать строковое значение свойства. \en Get a string value of the property. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. @@ -173,7 +173,7 @@ public: public: virtual MbeAttributeType AttributeType() const; // \ru Выдать подтип атрибута. \en Get subtype of an attribute. virtual void GetCharValue( TCHAR * v ) const; // \ru Выдать строковое значение свойства. \en Get a string value of the property. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. @@ -209,7 +209,7 @@ public: public: virtual MbeAttributeType AttributeType() const; // \ru Выдать подтип атрибута. \en Get subtype of an attribute. virtual void GetCharValue( TCHAR * v ) const; // \ru Выдать строковое значение свойства. \en Get a string value of the property. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. @@ -243,7 +243,7 @@ public: public: virtual MbeAttributeType AttributeType() const; // \ru Выдать подтип атрибута. \en Get subtype of an attribute. virtual void GetCharValue( TCHAR * v ) const; // \ru Выдать строковое значение свойства. \en Get a string value of the property. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. @@ -280,7 +280,7 @@ public: public: virtual MbeAttributeType AttributeType() const; // \ru Выдать подтип атрибута. \en Get subtype of an attribute. virtual void GetCharValue( TCHAR * v ) const; // \ru Выдать строковое значение свойства. \en Get a string value of the property. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. diff --git a/C3d/Include/attr_dencity.h b/C3d/Include/attr_dencity.h index 4a6599a..af3b489 100644 --- a/C3d/Include/attr_dencity.h +++ b/C3d/Include/attr_dencity.h @@ -38,7 +38,7 @@ public : // \ru Общие функции объекта \en Common functions of object. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. @@ -86,7 +86,7 @@ public : // \ru Общие функции объекта \en Common functions of object. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. @@ -137,7 +137,7 @@ public : // \ru Общие функции объекта \en Common functions of object. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. @@ -184,7 +184,7 @@ public : // \ru Общие функции объекта \en Common functions of object. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. diff --git a/C3d/Include/attr_elementary_attribute.h b/C3d/Include/attr_elementary_attribute.h index a9acab6..fbde862 100644 --- a/C3d/Include/attr_elementary_attribute.h +++ b/C3d/Include/attr_elementary_attribute.h @@ -30,7 +30,7 @@ public: public : virtual MbeAttributeType AttributeFamily() const; // \ru Тип атрибута \en Type of an attribute virtual MbeAttributeType AttributeType() const = 0; // \ru Выдать подтип атрибута \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Сделать копию элемента \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Сделать копию элемента \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const = 0; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ) = 0; // \ru Инициализировать данные по присланным \en Initialize data. @@ -39,13 +39,13 @@ public : // \ru Действия при конвертации владельца. \en Actions when converting the owner. virtual void OnConvertOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); /// \ru Действия при трансформировании владельца. \en Actions when transforming the owner. - virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = c3d_null ); + virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Действия при перемещении владельца. \en Actions when moving the owner. - virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = c3d_null ); + virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = nullptr ); // \ru Действия при вращении владельца. \en Actions when rotating the owner. - virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Действия при копировании владельца. \en Actions when copying the owner. - virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = c3d_null ); + virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = nullptr ); // \ru Действия при объединении владельца. \en Actions when merging the owner. virtual void OnMergeOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); // \ru Действия при замене владельца. \en Actions when replacing the owner. diff --git a/C3d/Include/attr_flange_attribute.h b/C3d/Include/attr_flange_attribute.h index a7b62bc..b04c1db 100644 --- a/C3d/Include/attr_flange_attribute.h +++ b/C3d/Include/attr_flange_attribute.h @@ -43,20 +43,20 @@ public: // \ru Выдать подтип атрибута. \en Get subtype of an attribute. virtual MbeAttributeType AttributeType() const; // \ru Сделать копию элемента. \en Create a copy of the element. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Инициализировать данные по присланным. \en Initialize data. virtual bool Init( const MbAttribute & ); // \ru Выполнить действия при трансформировании владельца. \en Perform actions when transforming the owner. - virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = c3d_null ); + virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Выполнить действия при перемещении владельца. \en Perform actions when moving the owner. - virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = c3d_null ); + virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = nullptr ); // \ru Выполнить действия при вращении владельца. \en Perform actions when rotating the owner. - virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Выполнить действия при копировании владельца. \en Perform actions when copying the owner. - virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = c3d_null ); + virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = nullptr ); // \ru Выполнить действия при объединении владельца. \en Perform actions when merging the owner. virtual void OnMergeOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); diff --git a/C3d/Include/attr_geometric_attribute.h b/C3d/Include/attr_geometric_attribute.h index e229a30..a223b3c 100644 --- a/C3d/Include/attr_geometric_attribute.h +++ b/C3d/Include/attr_geometric_attribute.h @@ -52,19 +52,19 @@ public: // \ru Выдать подтип атрибута. \en Get subtype of an attribute. virtual MbeAttributeType AttributeType() const; // \ru Сделать копию элемента. \en Create a copy of the element. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Инициализировать данные по присланным. \en Initialize data. virtual bool Init( const MbAttribute & ); // \ru Выполнить действия при трансформировании владельца. \en Perform actions when transforming the owner. - virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = c3d_null ); + virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Выполнить действия при перемещении владельца. \en Perform actions when moving the owner. - virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = c3d_null ); + virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = nullptr ); // \ru Выполнить действия при вращении владельца. \en Perform actions when rotating the owner. - virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Выполнить действия при копировании владельца. \en Perform actions when copying the owner. - virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = c3d_null ); + virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = nullptr ); // \ru Выполнить действия при объединении владельца. \en Perform actions when merging the owner. virtual void OnMergeOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); diff --git a/C3d/Include/attr_identifier.h b/C3d/Include/attr_identifier.h index 637b918..9fcd806 100644 --- a/C3d/Include/attr_identifier.h +++ b/C3d/Include/attr_identifier.h @@ -39,7 +39,7 @@ public : // \ru Общие функции объекта. \en Common functions of object. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. @@ -92,7 +92,7 @@ public : // \ru Общие функции объекта \en Common functions of object. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. @@ -159,7 +159,7 @@ public : // \ru Общие функции объекта \en Common functions of object virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. @@ -221,7 +221,7 @@ public : virtual MbeAttributeType AttributeFamily() const; // \ru Дать тип атрибута. \en Get type of an attribute. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data. @@ -233,13 +233,13 @@ public : // \ru Выполнить действия при конвертации владельца \en Perform actions when converting the owner. virtual void OnConvertOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); // \ru Выполнить действия при трансформировании владельца. \en Perform actions when transforming the owner. - virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = c3d_null ); + virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Выполнить действия при перемещении владельца. \en Perform actions when moving the owner. - virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = c3d_null ); + virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = nullptr ); // \ru Выполнить действия при вращении владельца. \en Perform actions when rotating the owner. - virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Выполнить действия при копировании владельца. \en Perform actions when copying the owner. - virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = c3d_null ); + virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = nullptr ); // \ru Выполнить действия при объединении владельца. \en Perform actions when merging the owner. virtual void OnMergeOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); // \ru Выполнить действия при замене владельца. \en Perform actions when replacing the owner. @@ -289,7 +289,7 @@ public: // \ru Общие функции объекта. \en Common functions of object. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по атрибуту. \en Initialize by attribute. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. diff --git a/C3d/Include/attr_product.h b/C3d/Include/attr_product.h index e6e9432..65e9192 100644 --- a/C3d/Include/attr_product.h +++ b/C3d/Include/attr_product.h @@ -37,7 +37,7 @@ public : // Выдать подтип атрибута (временно). virtual MbeAttributeType AttributeType() const = 0; // Сделать копию элемента. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const = 0; virtual bool IsSame( const MbAttribute &, double accuracy ) const = 0; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. // Инициализировать данные по присланным. virtual bool Init( const MbAttribute & ) = 0; @@ -49,13 +49,13 @@ public : // Действия при конвертации владельца. virtual void OnConvertOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); // Действия при трансформировании владельца. - virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = c3d_null ); + virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = nullptr ); // Действия при перемещении владельца. - virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = c3d_null ); + virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = nullptr ); // Действия при вращении владельца. - virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // Действия при копировании владельца. - virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = c3d_null ); + virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = nullptr ); // Действия при объединении владельца. virtual void OnMergeOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); // Действия при замене владельца. @@ -100,7 +100,7 @@ public : // Выдать подтип атрибута (временно). virtual MbeAttributeType AttributeType() const; // Сделать копию элемента. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; virtual bool IsSame( const MbAttribute &, double accuracy ) const; // Определить, являются ли объекты равными. // Инициализировать данные по присланным. virtual bool Init( const MbAttribute & ) ; @@ -326,7 +326,7 @@ public : // Выдать подтип атрибута (временно). virtual MbeAttributeType AttributeType() const; // Сделать копию элемента. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const ; + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const ; virtual bool IsSame( const MbAttribute &, double accuracy ) const; // Определить, являются ли объекты равными. // Инициализировать данные по присланным. virtual bool Init( const MbAttribute & ) ; diff --git a/C3d/Include/attr_selected.h b/C3d/Include/attr_selected.h index f808f21..7a5025b 100644 --- a/C3d/Include/attr_selected.h +++ b/C3d/Include/attr_selected.h @@ -37,7 +37,7 @@ public : // \ru Общие функции объекта. \en Common functions of object. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data by given attribute. @@ -83,7 +83,7 @@ public : // \ru Общие функции объекта. \en Common functions of object. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data by given attribute. @@ -129,7 +129,7 @@ public : // \ru Общие функции объекта. \en Common functions of object. virtual MbeAttributeType AttributeType() const; // \ru Дать подтип атрибута. \en Get subtype of an attribute. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data by given attribute. diff --git a/C3d/Include/attr_stamprib_attribute.h b/C3d/Include/attr_stamprib_attribute.h index 1833d3e..86e53f9 100644 --- a/C3d/Include/attr_stamprib_attribute.h +++ b/C3d/Include/attr_stamprib_attribute.h @@ -49,20 +49,20 @@ public: // \ru Выдать подтип атрибута. \en Get subtype of an attribute. virtual MbeAttributeType AttributeType() const; // \ru Сделать копию элемента. \en Create a copy of the element. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Инициализировать данные по присланным. \en Initialize data. virtual bool Init( const MbAttribute & ); // \ru Выполнить действия при трансформировании владельца. \en Perform actions when transforming the owner. - virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = c3d_null ); + virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Выполнить действия при перемещении владельца. \en Perform actions when moving the owner. - virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = c3d_null ); + virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = nullptr ); // \ru Выполнить действия при вращении владельца. \en Perform actions when rotating the owner. - virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Выполнить действия при копировании владельца. \en Perform actions when copying the owner. - virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = c3d_null ); + virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = nullptr ); // \ru Выполнить действия при объединении владельца. \en Perform actions when merging the owner. virtual void OnMergeOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); diff --git a/C3d/Include/attr_user_attribute.h b/C3d/Include/attr_user_attribute.h index ecb3a9d..423a87a 100644 --- a/C3d/Include/attr_user_attribute.h +++ b/C3d/Include/attr_user_attribute.h @@ -89,7 +89,7 @@ public: \ingroup Model_Attributes */ class MATH_CLASS MbUserAttribute : public MbAttribute, public MbSyncItem { - typedef std_unique_ptr UniqueMembufPtr; + typedef std::unique_ptr UniqueMembufPtr; protected : MbUserAttribType userType_; ///< \ru Тип пользовательского атрибута. \en Type of user attribute. c3d::string_t prompt_; ///< \ru Строка описания. \en String of description. @@ -108,7 +108,7 @@ public: /// \ru Выдать подтип пользовательского атрибута по пользовательскому типу. \en Get subtype of an user attribute by user-defined type. static MbeAttributeType AttributeType( const MbUserAttribType & userType ); - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ); // \ru Инициализировать данные по присланным. \en Initialize data by given attribute. @@ -117,13 +117,13 @@ public: // \ru Выполнить действия при конвертации владельца \en Perform actions when converting the owner virtual void OnConvertOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); // \ru Выполнить действия при трансформировании владельца \en Perform actions when transforming the owner - virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = c3d_null ); + virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Выполнить действия при перемещении владельца. \en Perform actions when moving the owner. - virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = c3d_null ); + virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = nullptr ); // \ru Выполнить действия при вращении владельца. \en Perform actions when rotating the owner. - virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Выполнить действия при копировании владельца \en Perform actions when copying the owner. - virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = c3d_null ); + virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = nullptr ); // \ru Выполнить действия при объединении владельца \en Perform actions when merging the owner. virtual void OnMergeOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); // \ru Выполнить действия при замене владельца. \en Perform actions when replacing the owner. @@ -197,7 +197,7 @@ public : /// \ru Выдать подтип атрибута. \en Get subtype of an attribute. virtual MbUserAttribType AttrTypeEx() const = 0; - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame( const MbAttribute &, double accuracy ) const = 0; // \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. virtual bool Init( const MbAttribute & ) = 0; // \ru Инициализировать данные по присланным. \en Initialize data. @@ -206,13 +206,13 @@ public : // \ru Выполнить действия при конвертации владельца. \en Perform actions when converting the owner. virtual void OnConvertOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); // \ru Выполнить действия при трансформировании владельца. \en Perform actions when transforming the owner. - virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = c3d_null ); + virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Выполнить действия при перемещении владельца. \en Perform actions when moving the owner. - virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = c3d_null ); + virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = nullptr ); // \ru Выполнить действия при вращении владельца. \en Perform actions when rotating the owner. - virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Выполнить действия при копировании владельца. \en Perform actions when copying the owner. - virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = c3d_null ); + virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = nullptr ); // \ru Выполнить действия при объединении владельца. \en Perform actions when merging the owner. virtual void OnMergeOwner( const MbAttributeContainer & owner, MbAttributeContainer & other ); // \ru Выполнить действия при замене владельца. \en Perform actions when replacing the owner. @@ -256,7 +256,7 @@ public: /// \ru Выдать идентификатор атрибута. \en Get attribute identifier. const MbUserAttribType & GetUserAttrId() const { return userAttrId; } /// \ru Выдать атрибуты. \en Get attributes. - const MbAttribute * GetAttribute( size_t k ) const { return ((k < attributes.size()) ? attributes[k] : c3d_null); } + const MbAttribute * GetAttribute( size_t k ) const { return ((k < attributes.size()) ? attributes[k] : nullptr); } // \ru Выдать количество атрибутов. \en Get the number of attributes. size_t AttributesCount() const { return attributes.size(); } @@ -300,7 +300,7 @@ MbUserAttribute * UserAttrDefinition::ReduceUserAttrib( const MbExter MbUserAttribute * resAttr = new MbUserAttribute( _T("AttrClass"), attrId ); resAttr->InitActions( source ); { - const char * charBuf = c3d_null; + const char * charBuf = nullptr; size_t memLen = 0; { membuf memBuf; @@ -330,7 +330,7 @@ MbUserAttribute * UserAttrDefinition::ReduceUserAttrib( const MbExter template MbExternalAttribute * UserAttrDefinition::AdvanceUserAttrib( const MbUserAttribute & source ) { - AttrClass * resAttr = c3d_null; + AttrClass * resAttr = nullptr; MbUserAttribType attrId; source.GetUserAttribId( attrId ); { @@ -360,7 +360,7 @@ MbExternalAttribute * UserAttrDefinition::AdvanceUserAttrib( const Mb // --- template MbFixAttrSet * UserAttrDefinition::DisassembleUserAttrib( const MbExternalAttribute & /*source*/ ) { - return c3d_null; + return nullptr; } @@ -379,7 +379,7 @@ bool UserAttrDefinition::ReassembleUserAttrib( const MbFixAttrSet & / template UserAttrDefinitionInstance::UserAttrDefinitionInstance( const MbUserAttribType & type ) : AttrDefInstance( type ) - , attrDef( c3d_null ) + , attrDef( nullptr ) { } @@ -390,7 +390,7 @@ UserAttrDefinitionInstance::UserAttrDefinitionInstance( const MbUs template UserAttrDefinitionInstance::~UserAttrDefinitionInstance() { - if ( attrDef != c3d_null ) + if ( attrDef != nullptr ) delete attrDef; } @@ -401,7 +401,7 @@ UserAttrDefinitionInstance::~UserAttrDefinitionInstance() template IAttrDefinition * UserAttrDefinitionInstance::GetAttrDefinition() { - if ( attrDef == c3d_null ) { + if ( attrDef == nullptr ) { ScopedLock ll( GetLock() ); attrDef = new AttrDefClass(); } diff --git a/C3d/Include/attribute.h b/C3d/Include/attribute.h index 4ba8ee3..2dc2b61 100644 --- a/C3d/Include/attribute.h +++ b/C3d/Include/attribute.h @@ -291,7 +291,7 @@ public : /// \ru Выдать подтип атрибута. \en Get subtype of an attribute. virtual MbeAttributeType AttributeType() const = 0; /// \ru Сделать копию элемента. \en Create a copy of the element. - virtual MbAttribute & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; + virtual MbAttribute & Duplicate( MbRegDuplicate * = nullptr ) const = 0; /** \brief \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. \~ \details \ru Равными считаются однотипные объекты, все данные которых одинаковы (равны). @@ -336,7 +336,7 @@ public : \en Perform actions when transforming the owner, \n This function is called after transforming the owning object in a case when GetActionForTransform() == trn_Self. The registrator of transformed objects may be passed as input parameter. \~ */ - virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = c3d_null ) = 0; + virtual void OnTransformOwner( const MbAttributeContainer & owner, const MbMatrix3D &, MbRegTransform * = nullptr ) = 0; /**\ru Выполнить действия при перемещении владельца. \n Вызывается после перемещения владеющего объекта при условии GetActionForTransform() == trn_Self. @@ -344,7 +344,7 @@ public : \en Perform actions when moving the owner. \n This function is called after moving the owning object in a case when GetActionForTransform() == trn_Self. The registrator of transformed objects may be passed as input parameter. \~ */ - virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = c3d_null ) = 0; + virtual void OnMoveOwner( const MbAttributeContainer & owner, const MbVector3D &, MbRegTransform * = nullptr ) = 0; /**\ru Выполнить действия при вращении владельца. \n Вызывается после вращения владеющего объекта при условии GetActionForTransform() == trn_Self. @@ -352,7 +352,7 @@ public : \en Perform actions when rotating the owner. \n This function is called after rotating the owning object in a case when GetActionForTransform() == trn_Self. The registrator of transformed objects may be passed as input parameter. \~ */ - virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = c3d_null ) = 0; + virtual void OnRotateOwner( const MbAttributeContainer & owner, const MbAxis3D &, double angle, MbRegTransform * = nullptr ) = 0; /**\ru Выполнить действия при копировании владельца. \n Вызывается после копирования владеющего объекта при условии GetActionForCopy() == cpy_Self. \n @@ -360,7 +360,7 @@ public : \en Perform actions when copying the owner. \n This function is called after copying the owning object in a case when GetActionForCopy() == cpy_Self. \n The following objects are passed as input parameters: the owning object copy and registrator of copied objects. \~ */ - virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = c3d_null ) = 0; + virtual void OnCopyOwner( const MbAttributeContainer & owner, MbAttributeContainer & other, MbRegDuplicate * = nullptr ) = 0; /**\ru Выполнить действия при объединении владельца. \n Вызывается перед слиянием владельца при условии GetActionForMerge() == mrg_Self. \n diff --git a/C3d/Include/attribute_container.h b/C3d/Include/attribute_container.h index c451f1a..fbdb8dc 100644 --- a/C3d/Include/attribute_container.h +++ b/C3d/Include/attribute_container.h @@ -169,13 +169,13 @@ public: /// \ru Выполнить действия при конвертации атрибутов. \en Perform actions when converting the attributes. void AttributesConvert( MbAttributeContainer & other ) const; /// \ru Выполнить действия при трансформировании атрибутов. \en Perform actions when transforming the attributes. - void AttributesTransform( const MbMatrix3D &, MbRegTransform * = c3d_null ); + void AttributesTransform( const MbMatrix3D &, MbRegTransform * = nullptr ); /// \ru Выполнить действия при перемещении атрибутов. \en Perform actions when moving the attributes. - void AttributesMove ( const MbVector3D &, MbRegTransform * = c3d_null ); + void AttributesMove ( const MbVector3D &, MbRegTransform * = nullptr ); /// \ru Выполнить действия при вращении атрибутов. \en Perform actions when rotating the attributes. - void AttributesRotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + void AttributesRotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); /// \ru Выполнить действия при копировании атрибутов. \en Perform actions when copying the attributes. - void AttributesCopy ( MbAttributeContainer & other, MbRegDuplicate * = c3d_null ) const; + void AttributesCopy ( MbAttributeContainer & other, MbRegDuplicate * = nullptr ) const; /// \ru Выполнить действия при объединении атрибутов. \en Perform actions when merging the attributes. void AttributesMerge ( MbAttributeContainer & other ); /// \ru Выполнить действия при замене атрибутов. \en Perform actions when replacing the attributes. @@ -195,7 +195,7 @@ public: double GetDensity() const; /// \ru Установить визуальные свойства объекта. \en Set visual properties of the object. - void SetVisual( float a, float d, float sp, float sh, float t, float e ); + void SetVisual( float a, float d, float sp, float sh, float t, float e, uint rgb = 0 ); /** \brief \ru Выдать визуальные свойства объекта. \en Get visual properties of the object. \~ \details \ru Выдать визуальные свойства объекта. @@ -215,7 +215,7 @@ public: \return \ru true если есть такой атрибут \n false в противном случае \en True if there is the attribute MbVisual \n otherwise false. \~ */ - bool GetVisual( float & a, float & d, float & sp, float & sh, float & t, float & e ) const; + bool GetVisual( float & a, float & d, float & sp, float & sh, float & t, float & e, uint rgb = 0 ) const; /// \ru Есть ли у объекта свой цвет. \en . @@ -226,7 +226,7 @@ public: \return \ru true если есть такой атрибут \n false в противном случае \en True if there is the attribute MbColor \n otherwise false. \~ */ - bool IsColored() const { return (GetSimpleAttribute( at_Color ) != c3d_null); } + bool IsColored() const { return (GetSimpleAttribute( at_Color ) != nullptr); } /// \ru Изменить цвет объекта. \en Change color of the object. void SetColor( uint32 ); /// \ru Изменить цвет объекта (0-255). \en Change color of the object (0-255). @@ -322,7 +322,7 @@ MATH_FUNC (bool) AddCommonAttributes( const MbAttributeContainer & srcItem, MbeAttributeType attrType, const c3d::string_t & attrPrompt, MbAttributeContainer & dstItem, - c3d::AttrVector * bufAttrs = c3d_null ); + c3d::AttrVector * bufAttrs = nullptr ); //------------------------------------------------------------------------------ /** \brief \ru Удалить обобщенные атрибуты. diff --git a/C3d/Include/cdet_data.h b/C3d/Include/cdet_data.h index c992aaa..32dc506 100644 --- a/C3d/Include/cdet_data.h +++ b/C3d/Include/cdet_data.h @@ -45,8 +45,8 @@ typedef const void * cdet_app_item; //---------------------------------------------------------------------------------------- // Constants //--- -const cdet_item CDET_NULL = c3d_null; ///< \ru Пустой объект набора для контроля столкновений. \en Empty object of the collision query set. -const cdet_app_item CDET_APP_NULL = c3d_null; ///< \ru "Нулевой" объект модели приложения. \en "Null object" of the client app. +const cdet_item CDET_NULL = nullptr; ///< \ru Пустой объект набора для контроля столкновений. \en Empty object of the collision query set. +const cdet_app_item CDET_APP_NULL = nullptr; ///< \ru "Нулевой" объект модели приложения. \en "Null object" of the client app. //---------------------------------------------------------------------------------------- /** \brief \ru Структура данных и обратных вызовов для запроса на поиск соударений. @@ -87,8 +87,8 @@ struct cdet_query const MbRefItem * refItem; const MbMatrix3D * wMatrix; geom_element() - : appItem( c3d_null ) - , refItem( c3d_null ) + : appItem( nullptr ) + , refItem( nullptr ) , wMatrix( &MbMatrix3D::identity ) {} }; @@ -127,7 +127,7 @@ struct cdet_query_result: public cdet_query private: static cback_res QueryFunc( cdet_query * query, message code, cback_data & ) { - C3D_ASSERT( c3d_null != query ); + C3D_ASSERT( nullptr != query ); cdet_query_result * q = static_cast( query ); switch( code ) { @@ -172,7 +172,7 @@ private: { case CDET_QUERY_STARTED: // The collision query is started for all solids of the set { - q->first = q->second = c3d_null; + q->first = q->second = nullptr; return CBACK_VOID; } case CDET_FINISHED: // A pair of solids is finished. @@ -368,7 +368,7 @@ public: MbCollisionFace( const MbFace & f ) : item( CDET_NULL ) , mathFace( &f ) - , partFace( c3d_null ) + , partFace( nullptr ) {} const MbFace & Face() const { return *mathFace; } diff --git a/C3d/Include/cdet_utility.h b/C3d/Include/cdet_utility.h index 776503e..dea98da 100644 --- a/C3d/Include/cdet_utility.h +++ b/C3d/Include/cdet_utility.h @@ -162,7 +162,7 @@ public: /* // Use AppItem() insead this cdet_app_item Component( size_t solIdx ) const; // The func is deprecated. Instead, use CheckCollisions - cdet_result InterferenceDetect( void * formalPar = c3d_null ) const; + cdet_result InterferenceDetect( void * formalPar = nullptr ) const; // The func is deprecated. Use SetDistanceTracking instead. void SetDistanceComputationObjects( const MbLumpAndFaces &, const MbLumpAndFaces & ); // The func is deprecated. Use AddSolid/AddItem instead. @@ -197,7 +197,7 @@ inline cdet_result MbCollisionDetectionUtility::CheckCollisions() /// \ru Узел дерева объемов. \en A node of the bounding volume tree. typedef const MtRefItem * cdet_bvt_node; /// \ru Пустое дерево объемов. \en An empty bounding volume tree. -const cdet_bvt_node CDET_BVT_NULL = c3d_null; +const cdet_bvt_node CDET_BVT_NULL = nullptr; /// \ru Пара ветвей поддерева объемов. \en A pair of branches of the bounding volume subtree. typedef std::pair cdet_bvt_pair; diff --git a/C3d/Include/check_geometry.h b/C3d/Include/check_geometry.h index de1557d..39a0694 100644 --- a/C3d/Include/check_geometry.h +++ b/C3d/Include/check_geometry.h @@ -70,13 +70,13 @@ public: public: /// \ru Пересечение - есть тело. \en Intersection is a solid. - bool IsSolid() const { return ((solid != c3d_null) || (isSolid && !edges.empty())); } + bool IsSolid() const { return ((solid != nullptr) || (isSolid && !edges.empty())); } /// \ru Пересечение касательной областью поверхности. \en Intersection by a tangent region of a surface. bool IsSurface() const { return !isTangentCurve && !edges.empty(); } /// \ru Пересечение вдоль касательной линии. \en Intersection along a tangent line. bool IsCurve() const { return isTangentCurve && !edges.empty(); } /// \ru Пересечение точкой (еще не реализовано). \en Intersection is a point (not implemented yet). - bool IsPoint() const { return ((pointFrame != c3d_null) && (pointFrame->GetVerticesCount() > 0)); } + bool IsPoint() const { return ((pointFrame != nullptr) && (pointFrame->GetVerticesCount() > 0)); } /// \ru Установить флаг пересечения вдоль касательной линии. \en Set the flag of intersection along a tangent line. //void SetTangent( bool b ) { isTangentCurve = b; } @@ -92,7 +92,7 @@ public: template void GetCurves( EdgesVector & curves ) const; /// \ru Получить указатель на кривую пересечения по индексу. \en Get a pointer to an intersection curve by the index. - const MbCurveEdge * GetCurve( size_t k ) const { return ((k < edges.size()) ? edges[k].get() : c3d_null); } + const MbCurveEdge * GetCurve( size_t k ) const { return ((k < edges.size()) ? edges[k].get() : nullptr); } /// \ru Получить номера касающихся граней первого/второго тела. \en Get numbers concerning faces of the first/second solid. template void GetFaceNumbers( bool first, OutputIndicesVector & ) const; @@ -101,7 +101,7 @@ public: void GetFaceNumbersPairs( OutputIndicesPairsVector & ) const; /// \ru Количество точек касания. \en The number of touch points. - size_t GetPointsCount() const { return ((pointFrame != c3d_null) ? pointFrame->GetVerticesCount() : 0); } + size_t GetPointsCount() const { return ((pointFrame != nullptr) ? pointFrame->GetVerticesCount() : 0); } /// \ru Получить набор точек касания. \en Get a set of touch points. const MbPointFrame * GetPointFrame() const { return pointFrame; } @@ -117,8 +117,8 @@ MbShellsIntersectionData::MbShellsIntersectionData( const EdgesVector & initEdge : edges ( ) , faceIndices1 ( ) , faceIndices2 ( ) - , solid ( c3d_null ) - , pointFrame ( c3d_null ) + , solid ( nullptr ) + , pointFrame ( nullptr ) , isTangentCurve( false ) , isSolid ( isSolidEgdes ) { @@ -127,7 +127,7 @@ MbShellsIntersectionData::MbShellsIntersectionData( const EdgesVector & initEdge c3d::EdgeSPtr edge; edges.reserve( addCnt ); for ( size_t k = 0; k < addCnt; ++k ) { - if ( initEdges[k] != c3d_null ) { + if ( initEdges[k] != nullptr ) { edge = const_cast( &(*initEdges[k]) ); edges.push_back( edge ); } @@ -146,8 +146,8 @@ MbShellsIntersectionData::MbShellsIntersectionData( const EdgesVector & in : edges ( ) , faceIndices1 ( ) , faceIndices2 ( ) - , solid ( c3d_null ) - , pointFrame ( c3d_null ) + , solid ( nullptr ) + , pointFrame ( nullptr ) , isTangentCurve( false ) , isSolid ( false ) { @@ -157,7 +157,7 @@ MbShellsIntersectionData::MbShellsIntersectionData( const EdgesVector & in c3d::EdgeSPtr edge; edges.reserve( edgesCnt ); for ( size_t k = 0; k < edgesCnt; ++k ) { - if ( initEdges[k] != c3d_null ) { + if ( initEdges[k] != nullptr ) { edge = const_cast(&(*initEdges[k])); edges.push_back( edge ); } @@ -177,8 +177,8 @@ MbShellsIntersectionData::MbShellsIntersectionData( const EdgesVector & : edges ( ) , faceIndices1 ( ) , faceIndices2 ( ) - , solid ( c3d_null ) - , pointFrame ( c3d_null ) + , solid ( nullptr ) + , pointFrame ( nullptr ) , isTangentCurve( false ) , isSolid ( false ) { @@ -189,7 +189,7 @@ MbShellsIntersectionData::MbShellsIntersectionData( const EdgesVector & edges.reserve( edgesCnt ); size_t k; for ( k = 0; k < edgesCnt; ++k ) { - if ( initEdges[k] != c3d_null ) { + if ( initEdges[k] != nullptr ) { edge = const_cast(&(*initEdges[k])); edges.push_back( edge ); } @@ -340,9 +340,9 @@ bool CheckBoundaryEdges( const Edges & allEdges, Edges * boundaryEdges ) if ( boundaryEdges != &allEdges ) { for ( size_t i = 0, cnt = allEdges.size(); i < cnt; ++i ) { - if ( allEdges[i] != c3d_null && allEdges[i]->IsBoundaryFace( METRIC_PRECISION ) ) { + if ( allEdges[i] != nullptr && allEdges[i]->IsBoundaryFace( METRIC_PRECISION ) ) { isBoundary = true; - if ( boundaryEdges != c3d_null ) + if ( boundaryEdges != nullptr ) boundaryEdges->push_back( allEdges[i] ); else break; @@ -415,9 +415,9 @@ bool CheckInexactVertices( const Vertices & vertArr, double mAcc, Vertices * ine if ( inexactVerts != &vertArr ) { for ( size_t i = 0, icnt = vertArr.size(); i < icnt; ++i ) { MbVertex * v = vertArr[i]; - if ( v != c3d_null && v->GetTolerance() > mAcc ) { + if ( v != nullptr && v->GetTolerance() > mAcc ) { isInexactVertex = true; - if ( inexactVerts != c3d_null ) + if ( inexactVerts != nullptr ) inexactVerts->push_back( v ); else break; @@ -480,12 +480,12 @@ bool CheckInexactEdges( const Edges & allEdges, double mAcc, Edges * inexactEdge bool isInexactEdge = false; for ( size_t i = 0, icnt = allEdges.size(); i < icnt; ++i ) { - if ( allEdges[i] != c3d_null) { + if ( allEdges[i] != nullptr) { bool isSpaceNear = !::IsInexactEdge( *allEdges[i], mAcc ); if ( !isSpaceNear ) { isInexactEdge = true; - if ( inexactEdges != c3d_null ) + if ( inexactEdges != nullptr ) inexactEdges->push_back( allEdges[i] ); else break; @@ -498,7 +498,7 @@ bool CheckInexactEdges( const Edges & allEdges, double mAcc, Edges * inexactEdge double mLen = allEdges[i]->GetLengthEvaluation(); if ( mLen > METRIC_PRECISION && mLen > mTol + METRIC_PRECISION ) { isInexactEdge = true; - if ( inexactEdges != c3d_null ) + if ( inexactEdges != nullptr ) inexactEdges->push_back( allEdges[i] ); else break; diff --git a/C3d/Include/collection.h b/C3d/Include/collection.h index 36f6f05..51a0b48 100644 --- a/C3d/Include/collection.h +++ b/C3d/Include/collection.h @@ -84,10 +84,10 @@ public: // \ru Общие функции геометрического объекта \en Common functions of a geometric object virtual MbeSpaceType IsA() const; // \ru Тип объекта. \en A type of an object. virtual MbeSpaceType Type() const; // \ru Групповой тип объекта. \en Group type of object. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate about an axis. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate about an axis. virtual bool IsSame ( const MbSpaceItem & init, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными? \en Are the objects equal? virtual bool SetEqual ( const MbSpaceItem & init ); // \ru Сделать объекты равным. \en Make the objects equal. virtual double DistanceToPoint ( const MbCartPoint3D & ) const; // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. @@ -184,9 +184,7 @@ public: /// \ru Удалить точки. \en Delete points. void PointsRemove() { points.clear(); - #ifdef C3D_STANDARD_CXX_11_PARTIAL - points.shrink_to_fit(); - #endif + points.shrink_to_fit(); cube.SetEmpty(); } /// \ru Удалить точку с заданным номером. \en Delete point by the given index. void PointRemove ( size_t i ) { if ( i < points.size() ) points.erase( points.begin() + i ); cube.SetEmpty(); } @@ -282,17 +280,13 @@ public: /// \ru Удалить всю триангуляцию и освободить память. \en Delete all triangulation and free the memory. void HardFlush() { points.clear(); normals.clear(); escorts.clear(); triangles.clear(); quadrangles.clear(); elements.clear(); segments.clear(); //grids.clear(); - #ifdef C3D_STANDARD_CXX_11_PARTIAL points.shrink_to_fit(); normals.shrink_to_fit(); escorts.shrink_to_fit(); triangles.shrink_to_fit(); quadrangles.shrink_to_fit(); elements.shrink_to_fit(); segments.shrink_to_fit(); //grids.shrink_to_fit(); - #endif cube.SetEmpty(); } /// \ru Освободить лишнюю память. \en Free the unnecessary memory. void Adjust() { - #ifdef C3D_STANDARD_CXX_11_PARTIAL points.shrink_to_fit(); normals.shrink_to_fit(); escorts.shrink_to_fit(); triangles.shrink_to_fit(); quadrangles.shrink_to_fit(); elements.shrink_to_fit(); segments.shrink_to_fit(); //grids.shrink_to_fit(); - #endif } /// \ru Инициализировать объект. \en Initialize object. diff --git a/C3d/Include/constraint.h b/C3d/Include/constraint.h index 9f98aec..3c7e52d 100644 --- a/C3d/Include/constraint.h +++ b/C3d/Include/constraint.h @@ -56,8 +56,8 @@ public: public: MtGeomArgument( const MbRefItem * p, const MbItem * h ); MtGeomArgument( const MtGeomArgument & ); - MtGeomArgument() : propItem( c3d_null ), propName( c3d::UNDEFINED_SNAME ) - , hash( c3d::UNDEFINED_SNAME ), item( c3d_null ), root( c3d_null ) {} + MtGeomArgument() : propItem( nullptr ), propName( c3d::UNDEFINED_SNAME ) + , hash( c3d::UNDEFINED_SNAME ), item( nullptr ), root( nullptr ) {} public: /** \brief \ru Получить непосредственный объект сборки, содержащий ссылочный объект. @@ -120,7 +120,7 @@ public: public: /// \ru Возвращает true, если ограничение не действительно. \en Return true if the constraint is invalid. - bool IsNull() const { return m_cItem == c3d_null; } + bool IsNull() const { return m_cItem == nullptr; } /// \ru Тип сопряжения (геометрического ограничения). \en Type of geometric constraint. MtMateType ConstraintType() const; /// \ru Текущее значение размера. \en Current value of the dimension. diff --git a/C3d/Include/contour_graph.h b/C3d/Include/contour_graph.h index 9b6fe93..55aee1d 100644 --- a/C3d/Include/contour_graph.h +++ b/C3d/Include/contour_graph.h @@ -38,8 +38,8 @@ public: /// \ru Конструктор по точке. \en Constructor by point. MpVertex( const MbCartPoint & initP ) : point( initP ) - , begEdge( c3d_null ) - , endEdge( c3d_null ) + , begEdge( nullptr ) + , endEdge( nullptr ) {} /// \ru Деструктор. \en Destructor. @@ -737,7 +737,7 @@ IMPL_PERSISTENT_OPS( MpGraph ) */ // --- inline void DeleteVertex( MpVertex *& vertex ) { delete vertex; - vertex = c3d_null; + vertex = nullptr; } @@ -751,7 +751,7 @@ inline void DeleteVertex( MpVertex *& vertex ) { */ // --- inline void DeleteEdge( MpEdge *& edge ) { delete edge; - edge = c3d_null; + edge = nullptr; } @@ -765,7 +765,7 @@ inline void DeleteEdge( MpEdge *& edge ) { */ // --- inline void DeleteLoop( MpLoop *& loop ) { delete loop; - loop = c3d_null; + loop = nullptr; } @@ -779,7 +779,7 @@ inline void DeleteLoop( MpLoop *& loop ) { */ // --- inline void DeleteGraph( MpGraph *& graph ) { delete graph; - graph = c3d_null; + graph = nullptr; } @@ -848,7 +848,7 @@ MATH_FUNC (MpGraph *) EncloseContoursBuilder( const RPArray & curveLi double accuracy, bool strict, VERSION version, - IProgressIndicator * progInd = c3d_null ); + IProgressIndicator * progInd = nullptr ); //------------------------------------------------------------------------------ @@ -886,7 +886,7 @@ MATH_FUNC (MpGraph *) OuterContoursBuilder( const RPArray & curveList, double accuracy, bool strict, VERSION version, - IProgressIndicator * progInd = c3d_null ); + IProgressIndicator * progInd = nullptr ); //------------------------------------------------------------------------------ /** \brief \ru Перестроить контуры, построенные ранее вокруг точки. @@ -924,7 +924,7 @@ MATH_FUNC (MpGraph *) ContoursReconstructor( const RPArray & curveLis double accuracy, bool strict, VERSION version, - IProgressIndicator * progInd = c3d_null ); + IProgressIndicator * progInd = nullptr ); #endif // __CONTOUR_GRAPH_H diff --git a/C3d/Include/conv_annotation_item.h b/C3d/Include/conv_annotation_item.h index 81df333..ff5d107 100644 --- a/C3d/Include/conv_annotation_item.h +++ b/C3d/Include/conv_annotation_item.h @@ -573,7 +573,7 @@ public: /// \ru Задать диапазон. \en Set range. void SetRange( double vPlus, double vMinus ); /// \ru Получить номинал. \en Get value. - bool GetValue( double& v ); + bool GetValue( double& v ) const; /// \ru Получить границы диапазона и значение, если они заданы. \en Get bounds of range and a value if they are specified. bool GetRange( double& v, double& vPlus, double& vMinus ) const; /// \ru Получить границы диапазона, если они заданы. \en Get bounds of the range if they are specified. diff --git a/C3d/Include/conv_exchange_settings.h b/C3d/Include/conv_exchange_settings.h index 03be42e..1edc307 100644 --- a/C3d/Include/conv_exchange_settings.h +++ b/C3d/Include/conv_exchange_settings.h @@ -454,7 +454,7 @@ public: virtual bool AttatchIdAttributes() const { return true; } /// \ru Получить пользовательский преобразователь строк. \en Get user string transformer. - virtual SPtr GetUserCharEncodingTransformer() const { return SPtr(c3d_null); } + virtual SPtr GetUserCharEncodingTransformer() const { return SPtr(nullptr); } }; // IConvertorProperty3D diff --git a/C3d/Include/conv_model_document.h b/C3d/Include/conv_model_document.h index e15d93e..40f40a3 100644 --- a/C3d/Include/conv_model_document.h +++ b/C3d/Include/conv_model_document.h @@ -65,7 +65,7 @@ public: /** \brief \ru Прообраз новой интерфейсной функции - получить наполнение. \en Prototype of a new interface function - get the filling. \~ */ - virtual MbItem * GetContent() /*{ return c3d_null; }*/ = 0; + virtual MbItem * GetContent() /*{ return nullptr; }*/ = 0; /** \brief \ru Создать документ с новой сборкой при импорте. \en Create a document with a new assembly while importing. \~ @@ -75,8 +75,8 @@ public: \en Assembly name. \~ \param[in] solids - \ru Тела, добавляемые в сборку. \en Solids to add into the assembly. \~ - \return \ru Экземпляр сборки, если операция прошла успешно, c3d_null в противном случае. - \en Instance of an assembly if the operation succeeded, c3d_null - otherwise. \~ + \return \ru Экземпляр сборки, если операция прошла успешно, nullptr в противном случае. + \en Instance of an assembly if the operation succeeded, nullptr - otherwise. \~ */ virtual ModelAssemblyPtr CreateAssembly( const c3d::ItemsSPtrVector & componentItems, const c3d::string_t& fileName ) = 0; @@ -89,8 +89,8 @@ public: \en Solids to add into a part. \~ \param[in] fileName - \ru Имя детали. \en A part name. \~ - \return \ru Экземпляр детали, если операция прошла успешно, c3d_null в противном случае. - \en Instance of the part if the operation succeeded, c3d_null - otherwise. \~ + \return \ru Экземпляр детали, если операция прошла успешно, nullptr в противном случае. + \en Instance of the part if the operation succeeded, nullptr - otherwise. \~ */ virtual ModelPartPtr CreatePart( const c3d::ItemsSPtrVector & componentItems, const c3d::string_t& fileName ) = 0; @@ -98,8 +98,8 @@ public: \en Get an assembly for export. \~ \details \ru Увеличить счётчик ссылок результирующей сборки на 1. \en Increase the reference counter of the resultant assembly by 1. \~ - \return \ru Экземпляр сборки, если операция прошла успешно, c3d_null в противном случае. - \en Instance of an assembly if the operation succeeded, c3d_null - otherwise. \~ + \return \ru Экземпляр сборки, если операция прошла успешно, nullptr в противном случае. + \en Instance of an assembly if the operation succeeded, nullptr - otherwise. \~ */ virtual ModelAssemblyPtr GetInstanceAssembly( ) = 0; @@ -108,8 +108,8 @@ public: \en Get the detail for export. \~ \details \ru Увеличить счётчик ссылок результирующей детали на 1. \en Increase the reference counter of the resultant part by 1. \~ - \return \ru Экземпляр детали, если операция прошла успешно, c3d_null в противном случае. - \en Instance of the part if the operation succeeded, c3d_null - otherwise. \~ + \return \ru Экземпляр детали, если операция прошла успешно, nullptr в противном случае. + \en Instance of the part if the operation succeeded, nullptr - otherwise. \~ */ virtual ModelPartPtr GetInstancePart( ) = 0; @@ -157,6 +157,9 @@ public: }; +class MaAtributePostRemover; + + //------------------------------------------------------------------------------ /** \brief \ru Формирователь геометрического представления PMI. \en Generator of PMI's geometry shape. \~ @@ -168,11 +171,14 @@ public: // --- class CONV_CLASS C3DPmiToItem : public MbRefItem { SPtr symToItem; + MaAtributePostRemover* tempAttributeManager; public: C3DPmiToItem( SPtr = SPtr() ); virtual SPtr operator() ( const MaAnnotationItem* ) const; virtual SPtr operator() ( const MbItem* ) const; + + void AddPartItem( const MbItem& ); // Добавить элемент для установления связи PMI и элемента модели virtual ~C3DPmiToItem(); }; @@ -341,8 +347,8 @@ public: \en LCS of the assembly in the parent's model. \~ \param[in] fileName - \ru Имя сборки. \en Assembly name. \~ - \return \ru Экземпляр сборки, если операция прошла успешно, c3d_null в противном случае. - \en Instance of an assembly if the operation succeeded, c3d_null - otherwise. \~ + \return \ru Экземпляр сборки, если операция прошла успешно, nullptr в противном случае. + \en Instance of an assembly if the operation succeeded, nullptr - otherwise. \~ */ virtual ModelAssemblyPtr CreateAssembly( const MbPlacement3D &place, const c3d::ItemsSPtrVector & componentItems, const c3d::string_t& fileName ) = 0; @@ -356,23 +362,23 @@ public: \en Solids included in the part. \~ \param[in] fileName - \ru Название детали. \en Solid's name. \~ - \return \ru Экземпляр детали, если операция прошла успешно, c3d_null в противном случае. - \en Instance of the part if the operation succeeded, c3d_null - otherwise. \~ + \return \ru Экземпляр детали, если операция прошла успешно, nullptr в противном случае. + \en Instance of the part if the operation succeeded, nullptr - otherwise. \~ */ virtual ModelPartPtr CreatePart( const MbPlacement3D &place, const c3d::ItemsSPtrVector & componentItems, const c3d::string_t& fileName ) = 0; /** \brief \ru Получить сборку для экспорта. \en Get an assembly for export. \~ - \return \ru Экземпляр сборки, если операция прошла успешно, c3d_null в противном случае. - \en Instance of an assembly if the operation succeeded, c3d_null - otherwise. \~ + \return \ru Экземпляр сборки, если операция прошла успешно, nullptr в противном случае. + \en Instance of an assembly if the operation succeeded, nullptr - otherwise. \~ */ virtual ModelAssemblyPtr GetInstanceAssembly( ) = 0; /** \brief \ru Получить деталь для экспорта. \en Get the detail for export. \~ - \return \ru Экземпляр детали, если операция прошла успешно, c3d_null в противном случае. - \en Instance of the part if the operation succeeded, c3d_null - otherwise. \~ + \return \ru Экземпляр детали, если операция прошла успешно, nullptr в противном случае. + \en Instance of the part if the operation succeeded, nullptr - otherwise. \~ */ virtual ModelPartPtr GetInstancePart( ) = 0; @@ -445,15 +451,15 @@ public: \en Get an empty interface of the insertion for creation of subassembly or a part while importing. \~ \details \ru Увеличить счётчик ссылок на 1. \en Increase the reference counter by 1. \~ - \return \ru Интерфейс вставки, если операция прошла успешно или c3d_null в противном случае. - \en Interface of the instance if the operation succeeded and c3d_null otherwise. \~ + \return \ru Интерфейс вставки, если операция прошла успешно или nullptr в противном случае. + \en Interface of the instance if the operation succeeded and nullptr otherwise. \~ */ virtual ModelInstancePtr PrepareInstance() = 0; /** \brief \ru Получить интерфейс следующей вставки для создания подсборки или детали при экспорте. \en Get the interface of the next insertion for creation of a subassembly or a part while exporting. \~ - \return \ru Интерфейс вставки, если операция прошла успешно или c3d_null в противном случае. - \en Interface of the insertion if the operation succeeded and c3d_null otherwise. \~ + \return \ru Интерфейс вставки, если операция прошла успешно или nullptr в противном случае. + \en Interface of the insertion if the operation succeeded and nullptr otherwise. \~ */ virtual ModelInstancePtr NextInstance( bool includeInvisible ) = 0; @@ -524,15 +530,15 @@ public: \en Get an empty interface of the insertion for creation of subassembly or a part while importing. \~ \details \ru Увеличить счётчик ссылок на 1. \en Increase the reference counter by 1. \~ - \return \ru Интерфейс вставки, если операция прошла успешно или c3d_null в противном случае. - \en Interface of the instance if the operation succeeded and c3d_null otherwise. \~ + \return \ru Интерфейс вставки, если операция прошла успешно или nullptr в противном случае. + \en Interface of the instance if the operation succeeded and nullptr otherwise. \~ */ virtual ModelInstancePtr PrepareInstance() = 0; /** \brief \ru Получить интерфейс следующей вставки для создания подсборки или детали при экспорте. \en Get the interface of the next insertion for creation of a subassembly or a part while exporting. \~ - \return \ru Интерфейс вставки, если операция прошла успешно или c3d_null в противном случае. - \en Interface of the insertion if the operation succeeded and c3d_null otherwise. \~ + \return \ru Интерфейс вставки, если операция прошла успешно или nullptr в противном случае. + \en Interface of the insertion if the operation succeeded and nullptr otherwise. \~ */ virtual ModelInstancePtr NextInstance( bool includeInvisible ) = 0; diff --git a/C3d/Include/conv_model_exchange.h b/C3d/Include/conv_model_exchange.h index 11f2f13..fa7b282 100644 --- a/C3d/Include/conv_model_exchange.h +++ b/C3d/Include/conv_model_exchange.h @@ -102,8 +102,8 @@ namespace c3d { */ CONV_FUNC( MbeConvResType ) ImportFromFile( MbModel& model, const path_string& fileName, - IConvertorProperty3D* prop = c3d_null, - IProgressIndicator* indicator = c3d_null ); + IConvertorProperty3D* prop = nullptr, + IProgressIndicator* indicator = nullptr ); /** \brief \ru Прочитать файл обменного формата в элемент. @@ -126,8 +126,8 @@ namespace c3d { */ CONV_FUNC( MbeConvResType ) ImportFromFile( c3d::ItemSPtr& item, const path_string& filePath, - IConvertorProperty3D* prop = c3d_null, - IProgressIndicator* indicator = c3d_null ); + IConvertorProperty3D* prop = nullptr, + IProgressIndicator* indicator = nullptr ); /** \brief \ru Прочитать файл обменного формата в модель. \en Read a file of an exchange format into model. \~ @@ -149,8 +149,8 @@ namespace c3d { */ CONV_FUNC( MbeConvResType ) ImportFromFile( ItModelDocument& mDoc, const path_string& filePath, - IConvertorProperty3D* prop = c3d_null, - IProgressIndicator* indicator = c3d_null ); + IConvertorProperty3D* prop = nullptr, + IProgressIndicator* indicator = nullptr ); /** \brief \ru Записать модель в файл обменного формата. \en Write the model into an exchange format file. \~ @@ -172,8 +172,8 @@ namespace c3d { */ CONV_FUNC( MbeConvResType ) ExportIntoFile( MbModel& model, const path_string& filePath, - IConvertorProperty3D* prop = c3d_null, - IProgressIndicator* indicator = c3d_null ); + IConvertorProperty3D* prop = nullptr, + IProgressIndicator* indicator = nullptr ); /** \brief \ru Записать модель в файл обменного формата. \en Write the model into an exchange format file. \~ @@ -195,8 +195,8 @@ namespace c3d { */ CONV_FUNC( MbeConvResType ) ExportIntoFile( MbItem& item, const path_string& filePath, - IConvertorProperty3D* prop = c3d_null, - IProgressIndicator* indicator = c3d_null ); + IConvertorProperty3D* prop = nullptr, + IProgressIndicator* indicator = nullptr ); /** \brief \ru Записать модельный документ в файл обменного формата. \en Write the model into an exchange format file. \~ @@ -218,8 +218,8 @@ namespace c3d { */ CONV_FUNC( MbeConvResType ) ExportIntoFile( ItModelDocument& mDoc, const path_string& filePath, - IConvertorProperty3D* prop = c3d_null, - IProgressIndicator* indicator = c3d_null ); + IConvertorProperty3D* prop = nullptr, + IProgressIndicator* indicator = nullptr ); /** \brief \ru Импортировать данные из буфера в модель. @@ -241,8 +241,8 @@ namespace c3d { CONV_FUNC( MbeConvResType ) ImportFromBuffer( MbModel& model, const C3DExchangeBuffer& buffer, MbeModelExchangeFormat modelFormat, - IConvertorProperty3D* prop = c3d_null, - IProgressIndicator* indicator = c3d_null ); + IConvertorProperty3D* prop = nullptr, + IProgressIndicator* indicator = nullptr ); /** \brief \ru Импортировать данные из буфера в модель. @@ -264,8 +264,8 @@ namespace c3d { CONV_FUNC( MbeConvResType ) ImportFromBuffer( c3d::ItemSPtr& item, const C3DExchangeBuffer& buffer, MbeModelExchangeFormat modelFormat, - IConvertorProperty3D* prop = c3d_null, - IProgressIndicator* indicator = c3d_null ); + IConvertorProperty3D* prop = nullptr, + IProgressIndicator* indicator = nullptr ); /** \brief \ru Экспортировать модель в буфер. @@ -287,8 +287,8 @@ namespace c3d { CONV_FUNC( MbeConvResType ) ExportIntoBuffer( MbModel& model, MbeModelExchangeFormat modelFormat, C3DExchangeBuffer& buffer, - IConvertorProperty3D* prop = c3d_null, - IProgressIndicator* indicator = c3d_null ); + IConvertorProperty3D* prop = nullptr, + IProgressIndicator* indicator = nullptr ); /** \brief \ru Экспортировать модель в буфер. @@ -310,8 +310,8 @@ namespace c3d { CONV_FUNC( MbeConvResType ) ExportIntoBuffer( MbItem& item, MbeModelExchangeFormat modelFormat, C3DExchangeBuffer& buffer, - IConvertorProperty3D* prop = c3d_null, - IProgressIndicator* indicator = c3d_null ); + IConvertorProperty3D* prop = nullptr, + IProgressIndicator* indicator = nullptr ); /** \brief \ru Экспортировать модельный документ в буфер. \en Export model document into buffer. \~ @@ -332,8 +332,8 @@ namespace c3d { CONV_FUNC( MbeConvResType ) ExportIntoBuffer( ItModelDocument& item, MbeModelExchangeFormat modelFormat, C3DExchangeBuffer& buffer, - IConvertorProperty3D* prop = c3d_null, - IProgressIndicator* indicator = c3d_null ); + IConvertorProperty3D* prop = nullptr, + IProgressIndicator* indicator = nullptr ); //------------------------------------------------------------------------------ /** \brief \ru Буфер для обмена. @@ -349,7 +349,7 @@ namespace c3d { // \ru Конструктор. \en Constructor. C3DExchangeBuffer() - : data( c3d_null ) + : data( nullptr ) , count( 0 ) { } @@ -416,10 +416,10 @@ public: \en Implementation of converter's properties interface. \~ \param[in] idoc - \ru Реализация интерфейса документа. \en Implementation of document interface. \~ - \param[in] stream - \ru Поток, из которого производится чтение (может быть c3d_null). - \en Stream from which reading is performed (can be c3d_null). \~ - \param[in] indicator - \ru Индикатор хода процесса (может быть c3d_null). - \en The process progress indicator (can be c3d_null). \~ + \param[in] stream - \ru Поток, из которого производится чтение (может быть nullptr). + \en Stream from which reading is performed (can be nullptr). \~ + \param[in] indicator - \ru Индикатор хода процесса (может быть nullptr). + \en The process progress indicator (can be nullptr). \~ \param[in] qeuryStitch - \ru Диалог запроса на сшивку поверхностей. \en Dialog of request for stitching the surfaces. \~ \return \ru Код завершения операции. @@ -440,10 +440,10 @@ public: \en Implementation of converter's properties interface. \~ \param[in] idoc - \ru Реализация интерфейса документа. \en Implementation of document interface. \~ - \param[in] stream - \ru Поток, в который производится запись (может быть c3d_null). - \en Stream in which the record is performed (can be c3d_null). \~ - \param[in] indicator - \ru Индикатор хода процесса (может быть c3d_null). - \en The process progress indicator (can be c3d_null). \~ + \param[in] stream - \ru Поток, в который производится запись (может быть nullptr). + \en Stream in which the record is performed (can be nullptr). \~ + \param[in] indicator - \ru Индикатор хода процесса (может быть nullptr). + \en The process progress indicator (can be nullptr). \~ \return \ru Код завершения операции. \en Code of the operation termination. \~ \ingroup ACIS_Exchange @@ -845,8 +845,8 @@ CONV_FUNC( MbeConvResType ) SATRead( IConvertorProperty3D& prop, ItModelDocument \en Implementation of converter's properties interface. \~ \param[in] idoc - \ru Реализация интерфейса документа. \en Implementation of document interface. \~ -\param[in] indicator - \ru Индикатор хода процесса (может быть c3d_null). - \en The process progress indicator (can be c3d_null). \~ +\param[in] indicator - \ru Индикатор хода процесса (может быть nullptr). + \en The process progress indicator (can be nullptr). \~ \return \ru Код завершения операции. \en Code of the operation termination. \~ \ingroup ACIS_Exchange @@ -1144,7 +1144,7 @@ namespace c3d { const char* data, size_t length, MbeModelExchangeFormat modelFormat, - IConvertorProperty3D* prop = c3d_null, IProgressIndicator* indicator = c3d_null ); + IConvertorProperty3D* prop = nullptr, IProgressIndicator* indicator = nullptr ); /** \brief \ru Экспортировать модель в буфер. \en Export model into buffer. \~ @@ -1195,7 +1195,7 @@ namespace c3d { DEPRECATE_DECLARE CONV_FUNC( MbeConvResType ) ExportIntoBuffer( MbItem& item, MbeModelExchangeFormat modelFormat, char*& data, size_t& length, - IConvertorProperty3D* prop = c3d_null, IProgressIndicator* indicator = c3d_null ); + IConvertorProperty3D* prop = nullptr, IProgressIndicator* indicator = nullptr ); } diff --git a/C3d/Include/conv_topo_mesh.h b/C3d/Include/conv_topo_mesh.h index d3c23bc..7a4cc6c 100644 --- a/C3d/Include/conv_topo_mesh.h +++ b/C3d/Include/conv_topo_mesh.h @@ -54,33 +54,47 @@ namespace JTC { std::vector boundaryPoints; double metricTolerance; public: - TopoMesh(); // Конструктор + /// Конструктор + TopoMesh(); - virtual ~TopoMesh(); //Деструктор + /// Деструктор + virtual ~TopoMesh(); - bool Init( const MbMesh& mesh, bool enableDiagnostics = false ); // Инициализировать + /// Инициализировать + bool Init( const MbMesh& mesh, bool enableDiagnostics = false ); - const MbMesh* GetMesh() const; // Получить сетку + /// Получить сетку + const MbMesh* GetMesh() const; - size_t MeshPolygonsCount() const; // Число полигонов + /// Число полигонов + size_t MeshPolygonsCount() const; - MeshPolygonPtr Polygon( size_t index ) const; // Получить полигон + /// Получить полигон + MeshPolygonPtr Polygon( size_t index ) const; - size_t MeshVerticisCount() const; // Число вершин + /// Число вершин + size_t MeshVerticisCount() const; - MeshVertexPtr Vertex( size_t index ) const; // Получить вершину + /// Получить вершину + MeshVertexPtr Vertex( size_t index ) const; - std::map< size_t, std::vector > GetDegeneratedTriangles() const; // Получить вырожденные треуголники + /// Получить вырожденные треуголники + std::map< size_t, std::vector > GetDegeneratedTriangles() const; - std::vector GetBoundaryPoints() const; // Получить граничные точки сетки + /// Получить граничные точки сетки + std::vector GetBoundaryPoints() const; - void Reset(); // Сбросить все данные + /// Сбросить все данные + void Reset(); - size_t NextBoundaryVertex( size_t indexBoundaryVertex, const std::vector& allBoundary ) const; // Получить следующую в цепочке граничную вершину. + /// Получить следующую в цепочке граничную вершину. + size_t NextBoundaryVertex( size_t indexBoundaryVertex, const std::vector& allBoundary ) const; - bool InitVoidBoundFrom( std::vector& freeBoundaryVerticis ); // Сформировать внешнюю границу начиная с указанной вершины. + /// Сформировать внешнюю границу начиная с указанной вершины. + bool InitVoidBoundFrom( std::vector& freeBoundaryVerticis ); - double MetricTolerance() const; // Получить точность задания расстояния. + /// Получить точность задания расстояния. + double MetricTolerance() const; OBVIOUS_PRIVATE_COPY( TopoMesh ) }; diff --git a/C3d/Include/cr_attribute_provider.h b/C3d/Include/cr_attribute_provider.h index b01d81b..696ed87 100644 --- a/C3d/Include/cr_attribute_provider.h +++ b/C3d/Include/cr_attribute_provider.h @@ -70,20 +70,20 @@ public: ~MbAttributeProvider(); virtual MbeCreatorType IsA() const; // \ru Выдать тип элемента. \en Get an element type. - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. - virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate about an axis. + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. + virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate about an axis. virtual bool IsSame( const MbCreator &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & ) const; // \ru Определить, являются ли объекты подобными. \en Determine whether the objects are similar. virtual bool SetEqual( const MbCreator & ); // \ru Сделать равным. \en Make equal. - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию. \en Create a copy. + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию. \en Create a copy. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта. \en Set properties of the object. virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта. \en Get a name of object property. virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction. + RPArray * items = nullptr ); // \ru Построение \en Construction. // \ru Добавить отдельный атрибут (забрать во владение) \en Add a separate attribute. void AddAttribute( const MbName & name, MbAttribute * attr ); @@ -125,7 +125,7 @@ public: /// \ru Записать полученные атрибуты. \en Save the received attributes. void ReceiveAttributes ( c3d::AttrVector & attrs ); /// \ru Скопировать атрибуты. \en Copy attributes. - void DuplicateAttributes( c3d::AttrVector & attrs, MbRegDuplicate * iReg = c3d_null ) const; + void DuplicateAttributes( c3d::AttrVector & attrs, MbRegDuplicate * iReg = nullptr ) const; /// \ru Дать количество атрибутов. \en Get the attributes count. size_t AttributesCount() const { return attributes.size(); } /// \ru Добавить атрибут. \en Add an attribute. diff --git a/C3d/Include/cr_boolean_solid.h b/C3d/Include/cr_boolean_solid.h index 1f3e3dc..c0d95ee 100644 --- a/C3d/Include/cr_boolean_solid.h +++ b/C3d/Include/cr_boolean_solid.h @@ -67,10 +67,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента. \en A type of element. - virtual void Transform( const MbMatrix3D &, MbRegTransform * ireg = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * ireg = c3d_null ); // \ru Сдвиг. \en Translation. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * ireg = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * ireg = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * ireg = nullptr ); // \ru Сдвиг. \en Translation. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * ireg = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. @@ -90,7 +90,7 @@ public : // \ru Общие функции твердого тела. \en Common functions of solid. virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction virtual void SetYourVersion( VERSION version, bool forAll ); @@ -107,7 +107,7 @@ public: /// \ru Общее количество строителей. \en Total count of creators. size_t GetCreatorsCount() const { return creators.size(); } /// \ru Дать строитель. \en Get the creator. - const MbCreator * GetCreator( size_t k ) const { return ( (k < creators.size()) ? creators[k] : c3d_null ); } + const MbCreator * GetCreator( size_t k ) const { return ( (k < creators.size()) ? creators[k] : nullptr ); } /// \ru Удалить из журнала строители первого тела. \en Delete first-solid creators from the history tree. bool DeleteFirstCreators(); private : diff --git a/C3d/Include/cr_chamfer_solid.h b/C3d/Include/cr_chamfer_solid.h index f311a8b..7a1e6b6 100644 --- a/C3d/Include/cr_chamfer_solid.h +++ b/C3d/Include/cr_chamfer_solid.h @@ -39,7 +39,7 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy virtual void GetProperties( MbProperties &properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties &properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -51,7 +51,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *&shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction private : virtual void ReadDistances ( reader &in ); diff --git a/C3d/Include/cr_connecting_curve.h b/C3d/Include/cr_connecting_curve.h index 78d432c..a5762c1 100644 --- a/C3d/Include/cr_connecting_curve.h +++ b/C3d/Include/cr_connecting_curve.h @@ -62,15 +62,15 @@ public : // \ru Общие функции строителя \en The common functions of the creator virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * iReg = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual MbePrompt GetPropertyName(); // \ru Дать имя свойства объекта \en Get the object property name virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -80,7 +80,7 @@ public : virtual void SetBasisPoints( const MbControlData3D & ); // \ru Изменить объект по контрольным точкам. \en Change the object by control points. // \ru Построить кривую по журналу построения \en Create a curve from the history tree - virtual bool CreateSpaceCurve( MbWireFrame *&, MbeCopyMode, RPArray * items = c3d_null ); + virtual bool CreateSpaceCurve( MbWireFrame *&, MbeCopyMode, RPArray * items = nullptr ); /** \} */ @@ -115,8 +115,8 @@ IMPL_PERSISTENT_OPS( MbConnectingCurveCreator ) \en An object defining the edges names. \~ \param[out] res - \ru Код результата операции. \en Operation result code. \~ - \param[out] surface - \ru Поверхность, которая будет создана и на которой базируется соединительная кривая, (может быть возращён c3d_null). - \en A surface on which the fillet curve is based on, it will be created by the method (can be c3d_null). \~ + \param[out] surface - \ru Поверхность, которая будет создана и на которой базируется соединительная кривая, (может быть возращён nullptr). + \en A surface on which the fillet curve is based on, it will be created by the method (can be nullptr). \~ \result \ru Возвращает строитель. \en Returns the constructor. \~ \ingroup Curve3D_Modeling diff --git a/C3d/Include/cr_cutting_solid.h b/C3d/Include/cr_cutting_solid.h index 02af35a..4acf7aa 100644 --- a/C3d/Include/cr_cutting_solid.h +++ b/C3d/Include/cr_cutting_solid.h @@ -66,10 +66,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -85,7 +85,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *&, MbeCopyMode sameShell, - RPArray * = c3d_null ); // \ru Построение \en Construction + RPArray * = nullptr ); // \ru Построение \en Construction // \ru Оставляемая часть (если part больше 0, то оставляем часть тела со стороны нормали поверхности). \en A part to be kept (if part is bigger than 0, then keep a part of solid from the side of surface normal). ThreeStates GetPart() const { return part; } diff --git a/C3d/Include/cr_detach_solid.h b/C3d/Include/cr_detach_solid.h index c61ebd2..6fc792f 100644 --- a/C3d/Include/cr_detach_solid.h +++ b/C3d/Include/cr_detach_solid.h @@ -42,10 +42,10 @@ public : \en \name Common functions of the mathematical object. \{ */ virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -56,7 +56,7 @@ public : virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным. \en Make equal. virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction /** \} */ /** \ru \name Функции строителя, разделяющие отдельные части оболочки. \en \name Functions of the creator subdividing separate parts of the shell. @@ -183,7 +183,7 @@ MbCreator * CreateDetach( MbFaceShell & solid, MbResultType & res ) { res = rt_Error; - MbCreator * result = c3d_null; + MbCreator * result = nullptr; ::MakeDetachShells( solid, partSolid, sort ); diff --git a/C3d/Include/cr_displace_creator.h b/C3d/Include/cr_displace_creator.h index ad4cf1f..8948356 100644 --- a/C3d/Include/cr_displace_creator.h +++ b/C3d/Include/cr_displace_creator.h @@ -42,12 +42,12 @@ public: // \ru Деструктор \en Destructor public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element virtual MbeCreatorType Type() const; // \ru Получить групповой тип объекта. \en Get the group type of the object. - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать по матрице \en Transform according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг по вектору \en Translation by a vector - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать по матрице \en Transform according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг по вектору \en Translation by a vector + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -55,13 +55,13 @@ public: // \ru Общие функции математического объе /// \ru Построение оболочки \en Creation of a shell. virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); /// \ru Построение каркаса кривых. \en Creation of a wire-frame. virtual bool CreateWireFrame( MbWireFrame *& frame, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); /// \ru Построение каркаса точек. \en Creation of a point-frame. virtual bool CreatePointFrame( MbPointFrame *& frame, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); /// \ru Переместить строитель. \en Displace the creator. virtual bool Perform( MbCreator * ) const; @@ -110,12 +110,12 @@ public: // \ru Деструктор \en Destructor public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element virtual MbeCreatorType Type() const; // \ru Получить групповой тип объекта. \en Get the group type of the object. - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать по матрице \en Transform according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг по вектору \en Translation by a vector - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать по матрице \en Transform according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг по вектору \en Translation by a vector + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -123,13 +123,13 @@ public: // \ru Общие функции математического объе /// \ru Построение оболочки \en Creation of a shell. virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); /// \ru Построение каркаса кривых. \en Creation of a wire-frame. virtual bool CreateWireFrame( MbWireFrame *& frame, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); /// \ru Построение каркаса точек. \en Creation of a point-frame. virtual bool CreatePointFrame( MbPointFrame *& frame, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); /// \ru Переместить строитель. \en Displace the creator. virtual bool Perform( MbCreator * ) const; @@ -177,12 +177,12 @@ public: // \ru Деструктор \en Destructor public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element virtual MbeCreatorType Type() const; // \ru Получить групповой тип объекта. \en Get the group type of the object. - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать по матрице \en Transform according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг по вектору \en Translation by a vector - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать по матрице \en Transform according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг по вектору \en Translation by a vector + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -190,13 +190,13 @@ public: // \ru Общие функции математического объе /// \ru Построение оболочки \en Creation of a shell. virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); /// \ru Построение каркаса кривых. \en Creation of a wire-frame. virtual bool CreateWireFrame( MbWireFrame *& frame, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); /// \ru Построение каркаса точек. \en Creation of a point-frame. virtual bool CreatePointFrame( MbPointFrame *& frame, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); /// \ru Переместить строитель. \en Displace the creator. virtual bool Perform( MbCreator * ) const; diff --git a/C3d/Include/cr_draft_solid.h b/C3d/Include/cr_draft_solid.h index b7c916b..7868991 100644 --- a/C3d/Include/cr_draft_solid.h +++ b/C3d/Include/cr_draft_solid.h @@ -47,7 +47,7 @@ public: , fp ( faceProp ) , np ( new MbPlacement3D( nPlace ) ) , edgeNb ( -1 ) - , pl ( c3d_null ) + , pl ( nullptr ) , reverse ( rev ) , step ( false ) { @@ -65,7 +65,7 @@ public: , angle ( ang ) , faceIndices( ) , fp ( faceProp ) - , np ( nPlace ? new MbPlacement3D( *nPlace ) : c3d_null ) + , np ( nPlace ? new MbPlacement3D( *nPlace ) : nullptr ) , edgeNb ( edgeInd ) , pl ( new SArray( partLines ) ) , reverse ( rev ) @@ -82,10 +82,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object @@ -98,7 +98,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *&, MbeCopyMode sameShell, - RPArray * = c3d_null ); // \ru Построение \en Construction + RPArray * = nullptr ); // \ru Построение \en Construction private : // \ru Объявление оператора присваивания без реализации, чтобы не было присваивания по умолчанию. \en The declaration of the assignment operator without implementation to prevent an assignment by default. diff --git a/C3d/Include/cr_duplication_solid.h b/C3d/Include/cr_duplication_solid.h index 03636fe..039d6f7 100644 --- a/C3d/Include/cr_duplication_solid.h +++ b/C3d/Include/cr_duplication_solid.h @@ -46,10 +46,10 @@ public: \{ */ /// \ru Получить регистрационный тип (для копирования, дублирования). \en Get the registration type (for copying, duplication). virtual MbeCreatorType IsA() const; - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru сделать копию \en create a copy - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru сделать копию \en create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & ); // \ru выдать свойства объекта \en get properties of the object virtual void SetProperties( const MbProperties & ); // \ru записать свойства объекта \en set properties of the object @@ -60,7 +60,7 @@ public: virtual bool SetEqual ( const MbCreator & ); // \ru сделать равным \en make equal virtual bool CreateShell( MbFaceShell *&, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction /** \} */ private : diff --git a/C3d/Include/cr_elementary_solid.h b/C3d/Include/cr_elementary_solid.h index f68766b..fb72164 100644 --- a/C3d/Include/cr_elementary_solid.h +++ b/C3d/Include/cr_elementary_solid.h @@ -111,10 +111,10 @@ public : \en \name Common functions of the shell creator. \{ */ virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -128,7 +128,7 @@ public : virtual bool SetEqual( const MbCreator & ); // \ru Сделать равным \en Make equal virtual bool CreateShell( MbFaceShell *&, MbeCopyMode sameShell, - RPArray * = c3d_null ); // \ru Построение \en Construction + RPArray * = nullptr ); // \ru Построение \en Construction /** \} */ private: diff --git a/C3d/Include/cr_evolution_solid.h b/C3d/Include/cr_evolution_solid.h index f2e211a..13976c9 100644 --- a/C3d/Include/cr_evolution_solid.h +++ b/C3d/Include/cr_evolution_solid.h @@ -27,7 +27,7 @@ class MATH_CLASS MbCurveEvolutionSolid : public MbCurveSweptSolid { protected : MbSweptData sweptData; ///< \ru Данные об образующей. \en Generating curve data. SPtr spineCurve; ///< \ru Направляющая кривая. \en Spine curve. - SPtr directionCurve; ///< \ru Кривая вектора ориентации матрицы преобразования (может быть c3d_null для простой траектории). \en A curve of the transformation matrix orientation (it may be c3d_null for a simple trajectory). + SPtr directionCurve; ///< \ru Кривая вектора ориентации матрицы преобразования (может быть nullptr для простой траектории). \en A curve of the transformation matrix orientation (it may be nullptr for a simple trajectory). MbVector3D direction; ///< \ru Вектор ориентации матрицы преобразования (может быть нулевой, в случае автоопределения). \en Vector of transformation matrix orientation (it's equal zero in the mode of automatic direction calculation). SPtr spineNames; ///< \ru Именователь направляющей. \en An object defining the name of the spine curve. EvolutionValues parameters; ///< \ru Параметры. \en Parameters. @@ -128,10 +128,10 @@ public : \en \name Common functions of the mathematical object. \{ */ virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object diff --git a/C3d/Include/cr_extension_shell.h b/C3d/Include/cr_extension_shell.h index bf2a62c..7fe8c42 100644 --- a/C3d/Include/cr_extension_shell.h +++ b/C3d/Include/cr_extension_shell.h @@ -46,10 +46,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -62,7 +62,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid solid virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction // \ru Дать параметры. \en Get the parameters. void GetParameters( ExtensionValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_extrusion_solid.h b/C3d/Include/cr_extrusion_solid.h index 93e122d..8aa896f 100644 --- a/C3d/Include/cr_extrusion_solid.h +++ b/C3d/Include/cr_extrusion_solid.h @@ -59,7 +59,7 @@ public : OperationType oType, const MbSNameMaker & operNames, const RPArray & contoursNames, - const c3d::CreatorsSPtrVector * creators = c3d_null, + const c3d::CreatorsSPtrVector * creators = nullptr, bool sameCreators = true ); private : @@ -73,10 +73,10 @@ public : \en \name Common functions of the mathematical object. \{ */ virtual MbeCreatorType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Cделать копию. \en Make a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Move. - virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Cделать копию. \en Make a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Move. + virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -94,7 +94,7 @@ public : \en \name Common functions of the rigid solid (forming operations). \{ */ virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение. \en Construction. + RPArray * items = nullptr ); // \ru Построение. \en Construction. virtual MbFaceShell * InitShell( bool in ); virtual void InitBasis( RPArray & items ); diff --git a/C3d/Include/cr_fillet_solid.h b/C3d/Include/cr_fillet_solid.h index 1bea799..a29bcbb 100644 --- a/C3d/Include/cr_fillet_solid.h +++ b/C3d/Include/cr_fillet_solid.h @@ -60,10 +60,10 @@ public : // \ru Общие функции математического объекта. \en Common functions of the mathematical object. virtual MbeCreatorType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D &matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D &to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D &axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D &to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D &axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -76,7 +76,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction private : virtual void ReadDistances ( reader &in ); diff --git a/C3d/Include/cr_hole_solid.h b/C3d/Include/cr_hole_solid.h index 66aa257..1216b4f 100644 --- a/C3d/Include/cr_hole_solid.h +++ b/C3d/Include/cr_hole_solid.h @@ -69,10 +69,10 @@ public : // \ru Переопределение функций базового класса \en The base class functions override virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -88,7 +88,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction virtual MbFaceShell * InitShell( bool in ); virtual void InitBasis( RPArray & items ); diff --git a/C3d/Include/cr_intersection_curve.h b/C3d/Include/cr_intersection_curve.h index ca58b4b..30c6dd9 100644 --- a/C3d/Include/cr_intersection_curve.h +++ b/C3d/Include/cr_intersection_curve.h @@ -45,15 +45,15 @@ public: // \ru Общие функции строителя. \en The common functions of the creator. virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * iReg = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual MbePrompt GetPropertyName(); // \ru Дать имя свойства объекта \en Get the object property name virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -63,7 +63,7 @@ public: virtual void SetBasisPoints( const MbControlData3D & ); // \ru Изменить объект по контрольным точкам. \en Change the object by control points. // \ru Построить кривую по журналу построения \en Create a curve from the history tree - virtual bool CreateWireFrame( MbWireFrame *&, MbeCopyMode, RPArray * items = c3d_null ); + virtual bool CreateWireFrame( MbWireFrame *&, MbeCopyMode, RPArray * items = nullptr ); /** \} */ diff --git a/C3d/Include/cr_join_shell.h b/C3d/Include/cr_join_shell.h index 8058e1e..cd10433 100644 --- a/C3d/Include/cr_join_shell.h +++ b/C3d/Include/cr_join_shell.h @@ -39,10 +39,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA () const; ///< \ru Тип элемента \en Element type - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; ///< \ru Сделать копию \en Make a copy - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); ///< \ru Преобразовать элемент согласно матрице \en Transform an element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); ///< \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); ///< \ru Поворот вокруг оси \en Rotation about an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; ///< \ru Сделать копию \en Make a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); ///< \ru Преобразовать элемент согласно матрице \en Transform an element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); ///< \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); ///< \ru Поворот вокруг оси \en Rotation about an axis virtual bool IsSame( const MbCreator &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & ) const; // \ru Являются ли объекты подобными. \en Whether the objects are similar @@ -58,7 +58,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid solid virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); ///< \ru Построение \en Construction + RPArray * items = nullptr ); ///< \ru Построение \en Construction // \ru Дать параметры. \en Get the parameters. diff --git a/C3d/Include/cr_lofted_solid.h b/C3d/Include/cr_lofted_solid.h index 52e35be..30ccfe1 100644 --- a/C3d/Include/cr_lofted_solid.h +++ b/C3d/Include/cr_lofted_solid.h @@ -29,7 +29,7 @@ protected : RPArray curves; ///< \ru Плоские сечения. \en Plane sections. SPtr spine; ///< \ru Осевая линия (может отсутствовать). \en Spine curve (can be absent). LoftedValues parameters; ///< \ru Параметры. \en Parameters. - RPArray * guideCurves; ///< \ru Массив направляющих кривых (может быть c3d_null). \en An array of guide curves (can be c3d_null). + RPArray * guideCurves; ///< \ru Массив направляющих кривых (может быть nullptr). \en An array of guide curves (can be nullptr). SArray * userPnts; ///< \ru Пользовательские точки на сечениях. \en Custom points on the sections. public: @@ -64,10 +64,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать \en Transform - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать \en Transform + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object diff --git a/C3d/Include/cr_median_shell.h b/C3d/Include/cr_median_shell.h index 4c4105d..031f713 100644 --- a/C3d/Include/cr_median_shell.h +++ b/C3d/Include/cr_median_shell.h @@ -48,13 +48,13 @@ private: public: virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame( const MbCreator &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -62,7 +62,7 @@ public: // \ru Построение оболочки по исходным данным \en Construction of a shell from the given data virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); /// \ru Дать параметры. \en Get the parameters. void GetParameters( MedianShellValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_mesh_shell.h b/C3d/Include/cr_mesh_shell.h index d0097ca..c17f67d 100644 --- a/C3d/Include/cr_mesh_shell.h +++ b/C3d/Include/cr_mesh_shell.h @@ -42,12 +42,12 @@ public: public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; ///< \ru Тип элемента \en Element type - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; ///< \ru Сделать копию \en Make a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; ///< \ru Сделать копию \en Make a copy virtual bool IsSame( const MbCreator &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool SetEqual ( const MbCreator & ); ///< \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); ///< \ru Преобразовать по матрице \en Transform according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); ///< \ru Сдвиг по вектору \en Translation by the vector - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); ///< \ru Поворот вокруг оси \en Rotation about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); ///< \ru Преобразовать по матрице \en Transform according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); ///< \ru Сдвиг по вектору \en Translation by the vector + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); ///< \ru Поворот вокруг оси \en Rotation about an axis virtual MbePrompt GetPropertyName(); ///< \ru Выдать заголовок свойства объекта \en Get name of object property virtual void GetProperties( MbProperties & ); ///< \ru Выдать свойства объекта \en Get properties of the object @@ -59,7 +59,7 @@ public: // \ru Общие функции математического объе public: /// \ru Построение оболочки \en Creation of a shell virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); // \ru Дать параметры. \en Get the parameters. void GetParameters( MeshSurfaceValues & params ) const; // \ru Установить параметры. \en Set the parameters. diff --git a/C3d/Include/cr_modified_nurbs_.h b/C3d/Include/cr_modified_nurbs_.h index e42dfbf..6a668d3 100644 --- a/C3d/Include/cr_modified_nurbs_.h +++ b/C3d/Include/cr_modified_nurbs_.h @@ -41,12 +41,12 @@ public: // \ru деструктор \en destructor public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru сделать копию \en create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru сделать копию \en create a copy virtual bool IsSame( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool SetEqual ( const MbCreator & ); // \ru сделать равным \en make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать по матрице \en Transform according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru сдвиг по вектору \en translation by a vector - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать по матрице \en Transform according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru сдвиг по вектору \en translation by a vector + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual MbePrompt GetPropertyName(); // \ru выдать заголовок свойства объекта \en get a name of object property virtual void GetProperties( MbProperties & properties ); // \ru выдать свойства объекта \en get properties of the object @@ -56,7 +56,7 @@ public: // \ru Общие функции математического объе /// \ru Построение оболочки. \en creation of a shell virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); virtual void Refresh( MbFaceShell & outer ); ///< \ru обновить форму оболочки \en update shape of the shell // \ru Выдать базовые объекты. \en Get basis objects. virtual void GetBasisItems( RPArray & s ); @@ -106,12 +106,12 @@ public: // \ru деструктор \en destructor public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru сделать копию \en create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru сделать копию \en create a copy virtual bool IsSame( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool SetEqual ( const MbCreator & ); // \ru сделать равным \en make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать по матрице \en Transform according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru сдвиг по вектору \en translation by a vector - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать по матрице \en Transform according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru сдвиг по вектору \en translation by a vector + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual MbePrompt GetPropertyName(); // \ru выдать заголовок свойства объекта \en get a name of object property virtual void GetProperties( MbProperties & properties ); // \ru выдать свойства объекта \en get properties of the object @@ -121,7 +121,7 @@ public: // \ru Общие функции математического объе /// \ru построение оболочки \en creation of a shell virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); virtual void Refresh( MbFaceShell & outer ); ///< \ru обновить форму оболочки \en update shape of the shell // \ru Выдать базовые объекты. \en Get basis objects. virtual void GetBasisItems( RPArray & s ); diff --git a/C3d/Include/cr_modified_solid.h b/C3d/Include/cr_modified_solid.h index 981e0d9..9b5e659 100644 --- a/C3d/Include/cr_modified_solid.h +++ b/C3d/Include/cr_modified_solid.h @@ -62,12 +62,12 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать по матрице \en Transform according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг по вектору \en Translation by the vector - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать по матрице \en Transform according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг по вектору \en Translation by the vector + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object @@ -77,7 +77,7 @@ public: /// \ru Построение оболочки \en Creation of a shell virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); virtual void Refresh( MbFaceShell & outer ); ///< \ru Обновить форму оболочки \en Update shape of the shell // \ru Дать параметры. \en Get the parameters. diff --git a/C3d/Include/cr_nurbs3d.h b/C3d/Include/cr_nurbs3d.h index a217629..4b0e269 100644 --- a/C3d/Include/cr_nurbs3d.h +++ b/C3d/Include/cr_nurbs3d.h @@ -53,15 +53,15 @@ public: // \ru Общие функции строителя. \en The common functions of the creator. virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * iReg = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual MbePrompt GetPropertyName(); // \ru Дать имя свойства объекта \en Get the object property name virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -71,7 +71,7 @@ public: virtual void SetBasisPoints( const MbControlData3D & ); // \ru Изменить объект по контрольным точкам. \en Change the object by control points. // \ru Построить кривую по журналу построения \en Create a curve from the history tree - virtual bool CreateWireFrame( MbWireFrame *&, MbeCopyMode, RPArray * items = c3d_null ); + virtual bool CreateWireFrame( MbWireFrame *&, MbeCopyMode, RPArray * items = nullptr ); /** \} */ diff --git a/C3d/Include/cr_nurbs_block_solid.h b/C3d/Include/cr_nurbs_block_solid.h index 6c4f70c..28e3b31 100644 --- a/C3d/Include/cr_nurbs_block_solid.h +++ b/C3d/Include/cr_nurbs_block_solid.h @@ -40,12 +40,12 @@ public: // \ru Деструктор \en Destructor public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать по матрице \en Transform according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг по вектору \en Translation by a vector - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать по матрице \en Transform according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг по вектору \en Translation by a vector + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object @@ -57,7 +57,7 @@ public: // \ru Общие функции математического объе public: /// \ru Построение оболочки \en Creation of a shell virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); virtual void Refresh( MbFaceShell & outer ); ///< \ru Обновить форму оболочки \en Update shape of the shell private: diff --git a/C3d/Include/cr_nurbs_surfaces_shell.h b/C3d/Include/cr_nurbs_surfaces_shell.h index dc84e16..8cd79dd 100644 --- a/C3d/Include/cr_nurbs_surfaces_shell.h +++ b/C3d/Include/cr_nurbs_surfaces_shell.h @@ -43,7 +43,7 @@ MATH_FUNC (MbFaceShell *) CreateNurbsSurfacesShell( NurbsSurfaceValues & p const MbSNameMaker & operNames, bool isPhantom, MbResultType & res, - IProgressIndicator * indicator = c3d_null ); + IProgressIndicator * indicator = nullptr ); //------------------------------------------------------------------------------ @@ -65,7 +65,7 @@ MATH_FUNC (MbFaceShell *) CreateNurbsSurfacesShell( NurbsSurfaceValues & p // --- MATH_FUNC (MbResultType) CheckNurbsSurfacesShell( const NurbsSurfaceValues & params, const MbFaceShell & shell, - IProgressIndicator * indicator = c3d_null ); + IProgressIndicator * indicator = nullptr ); #endif // __NURBS_SURFACES_SHELL_H diff --git a/C3d/Include/cr_nurbs_surfaces_solid.h b/C3d/Include/cr_nurbs_surfaces_solid.h index d4d335b..4a6be91 100644 --- a/C3d/Include/cr_nurbs_surfaces_solid.h +++ b/C3d/Include/cr_nurbs_surfaces_solid.h @@ -50,12 +50,12 @@ public: public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru сделать копию \en create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru сделать копию \en create a copy virtual bool IsSame( const MbCreator &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool SetEqual ( const MbCreator & ); // \ru сделать равным \en make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать по матрице \en Transform according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru сдвиг по вектору \en translation by a vector - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать по матрице \en Transform according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru сдвиг по вектору \en translation by a vector + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual MbePrompt GetPropertyName(); // \ru выдать заголовок свойства объекта \en get a name of object property virtual void GetProperties( MbProperties & properties ); // \ru выдать свойства объекта \en get properties of the object @@ -67,7 +67,7 @@ public: // \ru Общие функции математического объе public: /// \ru построение оболочки \en creation of a shell virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); virtual void Refresh( MbFaceShell & outer ); ///< \ru обновить форму оболочки \en update shape of the shell // \ru Дать параметры. \en Get the parameters. @@ -110,7 +110,7 @@ MATH_FUNC (MbCreator *) CreateNurbsShell( NurbsSurfaceValues & parameters, bool isPhantom, MbResultType & res, MbFaceShell *& shell, - IProgressIndicator * indicator = c3d_null ); + IProgressIndicator * indicator = nullptr ); #endif // __CR_NURBS_SURFACES_SOLID_H diff --git a/C3d/Include/cr_offset_curve.h b/C3d/Include/cr_offset_curve.h index 1477a02..4196550 100644 --- a/C3d/Include/cr_offset_curve.h +++ b/C3d/Include/cr_offset_curve.h @@ -92,15 +92,15 @@ public : // \ru Общие функции строителя. \en The common functions of the creator. virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * iReg = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual MbePrompt GetPropertyName(); // \ru Дать имя свойства объекта \en Get the object property name virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -113,7 +113,7 @@ public : virtual bool SetInternalCreators( MbeCreatorType, c3d::CreatorsSPtrVector & ); // \ru Получить внутренние построители по типу. \en Get internal creators by type. // \ru Построить кривую по журналу построения \en Create a curve from the history tree - virtual bool CreateWireFrame( MbWireFrame *&, MbeCopyMode, RPArray * items = c3d_null ); + virtual bool CreateWireFrame( MbWireFrame *&, MbeCopyMode, RPArray * items = nullptr ); /** \} */ diff --git a/C3d/Include/cr_patch_creator.h b/C3d/Include/cr_patch_creator.h index 3dd4dad..3230228 100644 --- a/C3d/Include/cr_patch_creator.h +++ b/C3d/Include/cr_patch_creator.h @@ -54,10 +54,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -72,7 +72,7 @@ public : // \ru Построение оболочки по исходным данным \en Construction of a shell from the given data virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); // \ru Дать параметры. \en Get the parameters. void GetParameters( PatchValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_projection_curve.h b/C3d/Include/cr_projection_curve.h index 4a64aa1..af43bb1 100644 --- a/C3d/Include/cr_projection_curve.h +++ b/C3d/Include/cr_projection_curve.h @@ -52,15 +52,15 @@ public: // \ru Общие функции строителя. \en The common functions of the creator. virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * iReg = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual MbePrompt GetPropertyName(); // \ru Дать имя свойства объекта \en Get the object property name virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -73,7 +73,7 @@ public: virtual bool SetInternalCreators( MbeCreatorType, c3d::CreatorsSPtrVector & ); // \ru Получить внутренние построители по типу. \en Get internal creators by type. // \ru Построить кривую по журналу построения \en Create a curve from the history tree - virtual bool CreateWireFrame( MbWireFrame *&, MbeCopyMode, RPArray * items = c3d_null ); + virtual bool CreateWireFrame( MbWireFrame *&, MbeCopyMode, RPArray * items = nullptr ); /** \} */ diff --git a/C3d/Include/cr_revolution_solid.h b/C3d/Include/cr_revolution_solid.h index c645843..20679b7 100644 --- a/C3d/Include/cr_revolution_solid.h +++ b/C3d/Include/cr_revolution_solid.h @@ -65,10 +65,10 @@ public : \en \name Common functions of the mathematical object. \{ */ virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object diff --git a/C3d/Include/cr_rib_solid.h b/C3d/Include/cr_rib_solid.h index 379080b..72fef7d 100644 --- a/C3d/Include/cr_rib_solid.h +++ b/C3d/Include/cr_rib_solid.h @@ -43,10 +43,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA () const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy - virtual void Transform ( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy + virtual void Transform ( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -60,7 +60,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *&shell, MbeCopyMode sameShell, - RPArray *items = c3d_null ); // \ru Построение \en Construction + RPArray *items = nullptr ); // \ru Построение \en Construction // \ru Дать параметры. \en Get the parameters. void GetParameters( RibValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_ruled_shell.h b/C3d/Include/cr_ruled_shell.h index 06d1c5b..a3a2acd 100644 --- a/C3d/Include/cr_ruled_shell.h +++ b/C3d/Include/cr_ruled_shell.h @@ -46,12 +46,12 @@ public: public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; ///< \ru Тип элемента \en Element type - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; ///< \ru Сделать копию \en Make a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; ///< \ru Сделать копию \en Make a copy virtual bool IsSame( const MbCreator &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool SetEqual ( const MbCreator & ); ///< \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); ///< \ru Преобразовать по матрице \en Transform according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); ///< \ru Сдвиг по вектору \en Translation by the vector - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); ///< \ru Поворот вокруг оси \en Rotation about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); ///< \ru Преобразовать по матрице \en Transform according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); ///< \ru Сдвиг по вектору \en Translation by the vector + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); ///< \ru Поворот вокруг оси \en Rotation about an axis virtual void GetProperties( MbProperties & properties ); ///< \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); ///< \ru Записать свойства объекта \en Write properties of the object @@ -63,7 +63,7 @@ public: // \ru Общие функции математического объе public: /// \ru Построение оболочки \en Creation of a shell virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); // \ru Дать параметры. \en Get the parameters. void GetParameters( RuledSurfaceValues & params ) const; // \ru Установить параметры. \en Set the parameters. diff --git a/C3d/Include/cr_section_shell.h b/C3d/Include/cr_section_shell.h index 3626994..5615418 100644 --- a/C3d/Include/cr_section_shell.h +++ b/C3d/Include/cr_section_shell.h @@ -54,10 +54,10 @@ public : \en \name Common functions of the mathematical object. \{ */ virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object @@ -75,7 +75,7 @@ public : \en \name Common functions of the rigid solid (forming operations). \{ */ virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction virtual void SetYourVersion( VERSION version ); /** \} */ diff --git a/C3d/Include/cr_sheet_bend_any_solid.h b/C3d/Include/cr_sheet_bend_any_solid.h index 09eb4bb..1ff4ef8 100644 --- a/C3d/Include/cr_sheet_bend_any_solid.h +++ b/C3d/Include/cr_sheet_bend_any_solid.h @@ -47,15 +47,15 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -65,7 +65,7 @@ public: virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction private: // \ru Объявление оператора присваивания без реализации, чтобы не было присваивания по умолчанию. \en The declaration of the assignment operator without implementation to prevent an assignment by default. diff --git a/C3d/Include/cr_sheet_bend_by_edge_solid.h b/C3d/Include/cr_sheet_bend_by_edge_solid.h index 2786936..b6a75d8 100644 --- a/C3d/Include/cr_sheet_bend_by_edge_solid.h +++ b/C3d/Include/cr_sheet_bend_by_edge_solid.h @@ -58,14 +58,14 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -76,7 +76,7 @@ public: virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction // \ru Дать параметры. \en Get the parameters. void GetParameters( MbBendByEdgeValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_sheet_bend_over_seg_solid.h b/C3d/Include/cr_sheet_bend_over_seg_solid.h index 8617fdc..aa8dd15 100644 --- a/C3d/Include/cr_sheet_bend_over_seg_solid.h +++ b/C3d/Include/cr_sheet_bend_over_seg_solid.h @@ -49,15 +49,15 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object @@ -69,7 +69,7 @@ public: // \ru Общие функции твердого тела \en Common functions of solid solid virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction // \ru Дать параметры. \en Get the parameters. void GetParameters( MbBendOverSegValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_sheet_bend_unbend_solid.h b/C3d/Include/cr_sheet_bend_unbend_solid.h index a6be1a7..3a8e687 100644 --- a/C3d/Include/cr_sheet_bend_unbend_solid.h +++ b/C3d/Include/cr_sheet_bend_unbend_solid.h @@ -50,15 +50,15 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -68,7 +68,7 @@ public: virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction private: // \ru Объявление оператора присваивания без реализации, чтобы не было присваивания по умолчанию. \en The declaration of the assignment operator without implementation to prevent an assignment by default. @@ -122,7 +122,7 @@ MATH_FUNC (MbCreator *) CreateBendUnbend( SPtr & init const MbSNameMaker & names, MbResultType & res, MbFaceShell *& shell, - RPArray * ribContours = c3d_null ); + RPArray * ribContours = nullptr ); diff --git a/C3d/Include/cr_sheet_builder_solid.h b/C3d/Include/cr_sheet_builder_solid.h index 6f551b9..3396263 100644 --- a/C3d/Include/cr_sheet_builder_solid.h +++ b/C3d/Include/cr_sheet_builder_solid.h @@ -44,15 +44,15 @@ public: // \ru Общие функции математического объекта. \en Common functions of the mathematical object. virtual MbeCreatorType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию. \en Create a copy. + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию. \en Create a copy. virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным. \en Make equal. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Translation. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Translation. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties ( MbProperties & properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties ( const MbProperties & properties ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -61,7 +61,7 @@ public: // \ru Общие функции твердого тела. \en Common functions of solid. // \ru Построение оболочки листового тела. \en Construction of a sheet metal shell. - virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, RPArray *items = c3d_null ); + virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, RPArray *items = nullptr ); // \ru Получить параметры. \en Get the parameters. void GetParameters( MbSolidToSheetMetalValues & params ) const { params = parameters; } // \ru Установить параметры. \en Set the parameters. diff --git a/C3d/Include/cr_sheet_closed_corner_solid.h b/C3d/Include/cr_sheet_closed_corner_solid.h index fa86c6c..f72c2b5 100644 --- a/C3d/Include/cr_sheet_closed_corner_solid.h +++ b/C3d/Include/cr_sheet_closed_corner_solid.h @@ -50,15 +50,15 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -68,7 +68,7 @@ public: virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction // \ru Дать параметры. \en Get the parameters. void GetParameters( MbClosedCornerValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_sheet_joint_bend_solid.h b/C3d/Include/cr_sheet_joint_bend_solid.h index 1e7dc69..3a517c3 100644 --- a/C3d/Include/cr_sheet_joint_bend_solid.h +++ b/C3d/Include/cr_sheet_joint_bend_solid.h @@ -57,15 +57,15 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -74,7 +74,7 @@ public: // \ru Общие функции твердого тела \en Common functions of solid solid virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction // \ru Дать параметры. \en Get the parameters. void GetParameters( MbJointBendValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_sheet_metal_solid.h b/C3d/Include/cr_sheet_metal_solid.h index 0b96d9f..08ffef3 100644 --- a/C3d/Include/cr_sheet_metal_solid.h +++ b/C3d/Include/cr_sheet_metal_solid.h @@ -82,10 +82,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object @@ -101,7 +101,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid solid virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction virtual MbFaceShell * InitShell( bool in ); diff --git a/C3d/Include/cr_sheet_restored_edges_solid.h b/C3d/Include/cr_sheet_restored_edges_solid.h index 08839eb..96be164 100644 --- a/C3d/Include/cr_sheet_restored_edges_solid.h +++ b/C3d/Include/cr_sheet_restored_edges_solid.h @@ -45,15 +45,15 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -63,7 +63,7 @@ public: virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction private: // \ru Объявление оператора присваивания без реализации, чтобы не было присваивания по умолчанию. \en The declaration of the assignment operator without implementation to prevent an assignment by default. diff --git a/C3d/Include/cr_sheet_simplified_flat_solid.h b/C3d/Include/cr_sheet_simplified_flat_solid.h index 0e73ead..2749c7d 100644 --- a/C3d/Include/cr_sheet_simplified_flat_solid.h +++ b/C3d/Include/cr_sheet_simplified_flat_solid.h @@ -42,15 +42,15 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -60,7 +60,7 @@ public: virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction private: // \ru Объявление оператора присваивания без реализации, чтобы не было присваивания по умолчанию. \en The declaration of the assignment operator without implementation to prevent an assignment by default. diff --git a/C3d/Include/cr_sheet_union_solid.h b/C3d/Include/cr_sheet_union_solid.h index 18b4a26..03cd429 100644 --- a/C3d/Include/cr_sheet_union_solid.h +++ b/C3d/Include/cr_sheet_union_solid.h @@ -43,10 +43,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual void Transform( const MbMatrix3D &, MbRegTransform * ireg = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * ireg = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * ireg = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * ireg = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * ireg = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * ireg = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object @@ -62,7 +62,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction virtual void SetYourVersion( VERSION version, bool forAll ); diff --git a/C3d/Include/cr_simple_creator.h b/C3d/Include/cr_simple_creator.h index 23a94c6..cd30980 100644 --- a/C3d/Include/cr_simple_creator.h +++ b/C3d/Include/cr_simple_creator.h @@ -68,10 +68,10 @@ public : \en \name Common functions of the shell creator. \{ */ virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -85,7 +85,7 @@ public : virtual bool SetEqual( const MbCreator & ); // \ru Сделать равным \en Make equal virtual bool CreateShell( MbFaceShell *&shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction /** \} */ const MbFaceShell * GetShell() const { return outer; } /// \ru Дать оболочку. \en Get a shell. @@ -158,7 +158,7 @@ bool MbSimpleCreator::DeleteShellCopies( const CreatorsVector & creators ) size_t i; for ( i = 0; i < creatorsCnt; ++i ) { MbCreator * creator = creators[i]; - if ( creator != c3d_null ) { + if ( creator != nullptr ) { if ( creator->IsA() == ct_SimpleCreator ) { MbSimpleCreator * simpleCreator = static_cast(creator); simpleShells.push_back( std::make_pair( i, simpleCreator->GetShell() ) ); @@ -184,7 +184,7 @@ bool MbSimpleCreator::DeleteShellCopies( const CreatorsVector & creators ) if ( shell1 && shell2 && (shell1 != shell2) ) { if ( shell1->IsSame( *shell2, LENGTH_EPSILON ) ) { sc2.SetShell( *shell1 ); - simpleShells[j].second = c3d_null; + simpleShells[j].second = nullptr; isReplaced = true; } } @@ -194,7 +194,7 @@ bool MbSimpleCreator::DeleteShellCopies( const CreatorsVector & creators ) std::sort( simpleShells.begin(), simpleShells.end(), ::SortByShellPointers ); simpleShells.erase( std::unique( simpleShells.begin(), simpleShells.end(), ::AreEqualShellPointers ), simpleShells.end() ); if ( simpleShells.size() > 1 ) { - if ( simpleShells.front().second == c3d_null ) + if ( simpleShells.front().second == nullptr ) simpleShells.erase( simpleShells.begin() ); } } @@ -215,7 +215,7 @@ bool MbSimpleCreator::IsThisShell( const MbFaceShell & shell, const CreatorsVect if ( creators.size() > 0 ) { for ( size_t i = creators.size(); i--; ) { const MbCreator * creator = creators[i]; - if ( (creator != c3d_null) && (creator->IsA() == ct_SimpleCreator) ) { + if ( (creator != nullptr) && (creator->IsA() == ct_SimpleCreator) ) { const MbSimpleCreator & simpleCreator = static_cast(*creator); if ( simpleCreator.GetShell() == &shell ) { res = true; @@ -253,10 +253,10 @@ public : \en \name Common functions of the shell creator. \{ */ virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -267,7 +267,7 @@ public : virtual bool IsSimilar ( const MbCreator & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction /** \} */ DECLARE_PERSISTENT_CLASS_NEW_DEL( MbReverseCreator ) diff --git a/C3d/Include/cr_smooth_solid.h b/C3d/Include/cr_smooth_solid.h index 3f35057..2a9ff67 100644 --- a/C3d/Include/cr_smooth_solid.h +++ b/C3d/Include/cr_smooth_solid.h @@ -41,10 +41,10 @@ public : virtual MbeCreatorType IsA() const = 0; // \ru Тип элемента \en A type of element virtual MbeCreatorType Type() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate *iReg = c3d_null ) const = 0; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D &matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D &to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D &axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate *iReg = nullptr ) const = 0; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D &to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D &axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & ) = 0; // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ) = 0; // \ru Записать свойства объекта \en Set properties of the object @@ -57,7 +57,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *&shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ) = 0; // \ru Построение \en Construction + RPArray * items = nullptr ) = 0; // \ru Построение \en Construction /// \ru Дать параметры. \en Get the parameters. void GetParameters( SmoothValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_split_data.h b/C3d/Include/cr_split_data.h index b1d4102..7922df9 100644 --- a/C3d/Include/cr_split_data.h +++ b/C3d/Include/cr_split_data.h @@ -91,7 +91,7 @@ public: , spaceCurves ( ) , surfaces ( ) , creators ( ) - , solidShell ( c3d_null ) + , solidShell ( nullptr ) { } /// \ru Конструктор по двумерному контуру в локальной системе координат. \en Constructor by two-dimensional contour in the local coordinate system. @@ -103,7 +103,7 @@ public: , spaceCurves ( ) , surfaces ( ) , creators ( ) - , solidShell ( c3d_null ) + , solidShell ( nullptr ) { SPtr sketchContour; sketchContour = same ? const_cast(&item) : static_cast(&item.Duplicate()); @@ -118,7 +118,7 @@ public: , spaceCurves ( ) , surfaces ( ) , creators ( ) - , solidShell ( c3d_null ) + , solidShell ( nullptr ) { C3D_ASSERT( (direction.MaxFactor() < LENGTH_EPSILON) || !direction.Orthogonal( place.GetAxisZ(), ANGLE_EPSILON ) ); @@ -136,7 +136,7 @@ public: , spaceCurves ( ) , surfaces ( ) , creators ( ) - , solidShell ( c3d_null ) + , solidShell ( nullptr ) { ::AddRefItems( items, same, sketchContours ); } @@ -150,7 +150,7 @@ public: , spaceCurves ( ) , surfaces ( ) , creators ( ) - , solidShell ( c3d_null ) + , solidShell ( nullptr ) { C3D_ASSERT( (direction.MaxFactor() < LENGTH_EPSILON) || !direction.Orthogonal( place.GetAxisZ(), ANGLE_EPSILON ) ); @@ -165,7 +165,7 @@ public: , spaceCurves ( ) , surfaces ( ) , creators ( ) - , solidShell ( c3d_null ) + , solidShell ( nullptr ) { ::AddRefItems( items, same, spaceCurves ); } @@ -178,7 +178,7 @@ public: , spaceCurves ( ) , surfaces ( ) , creators ( ) - , solidShell ( c3d_null ) + , solidShell ( nullptr ) { ::AddRefItems( items, same, spaceCurves ); } @@ -191,7 +191,7 @@ public: , spaceCurves ( ) , surfaces ( ) , creators ( ) - , solidShell ( c3d_null ) + , solidShell ( nullptr ) { SPtr surface; surface = same ? const_cast(&item) : static_cast(&item.Duplicate()); @@ -206,7 +206,7 @@ public: , spaceCurves ( ) , surfaces ( ) , creators ( ) - , solidShell ( c3d_null ) + , solidShell ( nullptr ) { ::AddRefItems( items, same, surfaces ); } @@ -219,7 +219,7 @@ public: , spaceCurves ( ) , surfaces ( ) , creators ( ) - , solidShell ( c3d_null ) + , solidShell ( nullptr ) { ::AddRefItems( items, same, surfaces ); } @@ -322,12 +322,12 @@ public: DeleteItems(); size_t creatorsCnt = solidCreators.size(); if ( creatorsCnt > 0 ) { - MbRegDuplicate * iReg = c3d_null; + MbRegDuplicate * iReg = nullptr; MbAutoRegDuplicate autoReg( iReg ); SPtr creator; creators.reserve( creatorsCnt ); for ( size_t k = 0; k < creatorsCnt; ++k ) { - if ( solidCreators[k] != c3d_null ) { + if ( solidCreators[k] != nullptr ) { creator = sameCreators ? &const_cast( *solidCreators[k] ) : static_cast( &solidCreators[k]->Duplicate( iReg ) ); creators.push_back( creator ); ::DetachItem( creator ); @@ -343,17 +343,17 @@ public: /// \ru Являются ли объекты подобными. \en Determine whether the objects are similar. bool IsSimilar( const MbSplitData & ) const; /// \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); + void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); /// \ru Сдвинуть по вектору. \en Shift by a vector. - void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); + void Move ( const MbVector3D &, MbRegTransform * = nullptr ); /// \ru Повернуть вокруг оси. \en Rotate about an axis. - void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); /// \ru Отсутствуют ли объекты? \en Are the objects absent? bool IsEmpty() const { return ( sketchContours.empty() && spaceCurves.empty() && surfaces.empty() && - (creators.empty() && (solidShell == c3d_null)) ); } + (creators.empty() && (solidShell == nullptr)) ); } /// \ru Являются ли объекты равными? \en Determine whether an object is equal? bool IsSame( const MbSplitData &, double accuracy ) const; @@ -377,9 +377,9 @@ public: /// \ru Установить направление выдавливания двумерных кривых. \en Set extrusion direction of two-dimensional curves. void SetSketchSense( MbeSenseValue zdir ) { sense = zdir; } /// \ru Получить двумерную кривую по индексу. \en Get two-dimensional curve by index. - const MbContour * GetSketchCurve( size_t k ) const { return ((k < sketchContours.size()) ? sketchContours[k].get() : c3d_null ); } + const MbContour * GetSketchCurve( size_t k ) const { return ((k < sketchContours.size()) ? sketchContours[k].get() : nullptr ); } /// \ru Получить двумерную кривую по индексу. \en Get two-dimensional curve by index. - MbContour * SetSketchCurve( size_t k ) { return ((k < sketchContours.size()) ? sketchContours[k].get() : c3d_null ); } + MbContour * SetSketchCurve( size_t k ) { return ((k < sketchContours.size()) ? sketchContours[k].get() : nullptr ); } /// \ru Получить все двумерные кривые. \en Get all two-dimensional curves. template void GetSketchCurves( PlaneContoursVector & curvs ) const @@ -401,9 +401,9 @@ public: /// \ru Выдать количество пространственных кривых. \en Get number of spatial curves. size_t GetSpaceCurvesCount() const { return spaceCurves.size(); } /// \ru Получить пространственную кривую по индексу. \en Get a spatial curve by index. - const MbCurve3D * GetSpaceCurve( size_t k ) const { return ((k < spaceCurves.size()) ? spaceCurves[k].get() : c3d_null ); } + const MbCurve3D * GetSpaceCurve( size_t k ) const { return ((k < spaceCurves.size()) ? spaceCurves[k].get() : nullptr ); } /// \ru Получить пространственную кривую по индексу. \en Get a spatial curve by index. - MbCurve3D * SetSpaceCurve( size_t k ) { return ((k < spaceCurves.size()) ? spaceCurves[k].get() : c3d_null ); } + MbCurve3D * SetSpaceCurve( size_t k ) { return ((k < spaceCurves.size()) ? spaceCurves[k].get() : nullptr ); } /// \ru Получить все пространственные кривые. \en Get all spatial curves. template void GetSpaceCurves( SpaceCurvesVector & curvs ) const @@ -425,9 +425,9 @@ public: /// \ru Выдать количество поверхностей. \en Get number of surfaces. size_t GetSurfacesCount() const { return surfaces.size(); } /// \ru Получить поверхность по индексу. \en Get a surface by index. - const MbSurface * GetSurface( size_t k ) const { return ((k < surfaces.size()) ? surfaces[k].get() : c3d_null); } + const MbSurface * GetSurface( size_t k ) const { return ((k < surfaces.size()) ? surfaces[k].get() : nullptr); } /// \ru Получить поверхность по индексу. \en Get a surface by index. - MbSurface * SetSurface( size_t k ) { return ((k < surfaces.size()) ? surfaces[k].get() : c3d_null); } + MbSurface * SetSurface( size_t k ) { return ((k < surfaces.size()) ? surfaces[k].get() : nullptr); } /// \ru Получить все поверхности. \en Get all surfaces. template void GetSurfaces( SurfacesVector & surfs ) const @@ -449,9 +449,9 @@ public: /// \ru Выдать количество строителей тела. \en Get number of solid creators. size_t GetCreatorsCount() const { return creators.size(); } /// \ru Получить строитель по индексу. \en Get constructor by index. - const MbCreator * GetCreator( size_t k ) const { return ((k < creators.size()) ? creators[k].get() : c3d_null ); } + const MbCreator * GetCreator( size_t k ) const { return ((k < creators.size()) ? creators[k].get() : nullptr ); } /// \ru Получить строитель по индексу. \en Get constructor by index. - MbCreator * SetCreator( size_t k ) { return ((k < creators.size()) ? creators[k].get() : c3d_null ); } + MbCreator * SetCreator( size_t k ) { return ((k < creators.size()) ? creators[k].get() : nullptr ); } /// \ru Получить все строители. \en Get all creators. template void GetCreators( CreatorsVector & crs ) const @@ -468,17 +468,17 @@ public: template void GetCreatorsCopies( CreatorsVector & crs ) const { - MbRegDuplicate * iReg = c3d_null; + MbRegDuplicate * iReg = nullptr; MbAutoRegDuplicate autoReg( iReg ); crs.reserve( crs.size() + creators.size() ); c3d::CreatorSPtr creator; for ( size_t k = 0, addCnt = creators.size(); k < addCnt; ++k ) { - if ( creators[k] != c3d_null ) + if ( creators[k] != nullptr ) creator = static_cast( &creators[k]->Duplicate( iReg ) ); crs.push_back( creator ); ::DetachItem( creator ); - creator = c3d_null; + creator = nullptr; } } /// \ru Получить все строители. \en Get all creators. diff --git a/C3d/Include/cr_split_shell.h b/C3d/Include/cr_split_shell.h index bf977ee..067a7b0 100644 --- a/C3d/Include/cr_split_shell.h +++ b/C3d/Include/cr_split_shell.h @@ -41,10 +41,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA () const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -58,7 +58,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction private: // \ru Не реализовано \en Not implemented // \ru Объявление конструктора копирования без реализации, чтобы не было копирования по умолчанию. \en Declaration without implementation of the copy-constructor to prevent copying by default. diff --git a/C3d/Include/cr_stamp_bead_solid.h b/C3d/Include/cr_stamp_bead_solid.h index d75828a..12ecdbd 100644 --- a/C3d/Include/cr_stamp_bead_solid.h +++ b/C3d/Include/cr_stamp_bead_solid.h @@ -67,15 +67,15 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA () const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties ( MbProperties &properties ); // \ru Выдать свойства объекта \en Get properties of the object @@ -87,7 +87,7 @@ public: // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction // \ru Дать параметры. \en Get the parameters. void GetParameters( MbBeadValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_stamp_jalousie_solid.h b/C3d/Include/cr_stamp_jalousie_solid.h index 5173b53..94a8629 100644 --- a/C3d/Include/cr_stamp_jalousie_solid.h +++ b/C3d/Include/cr_stamp_jalousie_solid.h @@ -66,13 +66,13 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA () const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties ( MbProperties &properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties ( const MbProperties &properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -84,7 +84,7 @@ public: // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction // \ru Дать параметры. \en Get the parameters. void GetParameters( MbJalousieValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_stamp_jog_solid.h b/C3d/Include/cr_stamp_jog_solid.h index b3ce5c2..75380d6 100644 --- a/C3d/Include/cr_stamp_jog_solid.h +++ b/C3d/Include/cr_stamp_jog_solid.h @@ -63,13 +63,13 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -82,7 +82,7 @@ public: virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction // \ru Дать параметры. \en Get the parameters. void GetParameters( MbJogValues & params ) const { params = jogParameters; } diff --git a/C3d/Include/cr_stamp_remove_solid.h b/C3d/Include/cr_stamp_remove_solid.h index 00de62a..c35c497 100644 --- a/C3d/Include/cr_stamp_remove_solid.h +++ b/C3d/Include/cr_stamp_remove_solid.h @@ -59,15 +59,15 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -77,7 +77,7 @@ public: virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction private: // \ru Объявление оператора присваивания без реализации, чтобы не было присваивания по умолчанию. \en The declaration of the assignment operator without implementation to prevent an assignment by default. diff --git a/C3d/Include/cr_stamp_rib_solid.h b/C3d/Include/cr_stamp_rib_solid.h index 615d611..c6042a5 100644 --- a/C3d/Include/cr_stamp_rib_solid.h +++ b/C3d/Include/cr_stamp_rib_solid.h @@ -46,10 +46,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA () const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy - virtual void Transform ( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy + virtual void Transform ( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -62,7 +62,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *&shell, MbeCopyMode sameShell, - RPArray *items = c3d_null ); // \ru Построение \en Construction + RPArray *items = nullptr ); // \ru Построение \en Construction // \ru Дать параметры. \en Get the parameters. void GetParameters( SheetRibValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_stamp_ruled_solid.h b/C3d/Include/cr_stamp_ruled_solid.h index 6ddb86a..ad2be8c 100644 --- a/C3d/Include/cr_stamp_ruled_solid.h +++ b/C3d/Include/cr_stamp_ruled_solid.h @@ -49,15 +49,15 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object @@ -69,7 +69,7 @@ public: virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction // \ru Дать базовые объекты. \en Get the base objects. virtual void GetBasisItems( RPArray & s ); diff --git a/C3d/Include/cr_stamp_solid.h b/C3d/Include/cr_stamp_solid.h index 546710c..3581b46 100644 --- a/C3d/Include/cr_stamp_solid.h +++ b/C3d/Include/cr_stamp_solid.h @@ -65,15 +65,15 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties ( MbProperties &properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties ( const MbProperties &properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -85,7 +85,7 @@ public: // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *&shell, MbeCopyMode sameShell, - RPArray *items = c3d_null ); // \ru Построение \en Construction + RPArray *items = nullptr ); // \ru Построение \en Construction // \ru Дать параметры. \en Get the parameters. void GetParameters( MbStampingValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_stamp_spherical_solid.h b/C3d/Include/cr_stamp_spherical_solid.h index f83ff7e..8e12b92 100644 --- a/C3d/Include/cr_stamp_spherical_solid.h +++ b/C3d/Include/cr_stamp_spherical_solid.h @@ -60,15 +60,15 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties ( MbProperties &properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties ( const MbProperties &properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -80,7 +80,7 @@ public: // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *&shell, MbeCopyMode sameShell, - RPArray *items = c3d_null ); // \ru Построение \en Construction + RPArray *items = nullptr ); // \ru Построение \en Construction // \ru Дать параметры. \en Get the parameters. void GetParameters( MbStampingValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_stamp_user_solid.h b/C3d/Include/cr_stamp_user_solid.h index d27ee72..b9a91f9 100644 --- a/C3d/Include/cr_stamp_user_solid.h +++ b/C3d/Include/cr_stamp_user_solid.h @@ -60,15 +60,15 @@ public: // \ru Общие функции математического объекта. \en Common functions of the mathematical object. virtual MbeCreatorType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию. \en Create a copy. + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию. \en Create a copy. virtual bool IsSame ( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & item ) const; // \ru Являются ли объекты подобными? \en Determine whether an object is similar? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным. \en Make equal. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Translation. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Translation. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties ( MbProperties &properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties ( const MbProperties &properties ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -77,7 +77,7 @@ public: // \ru Общие функции твердого тела. \en Common functions of solid. virtual bool CreateShell( MbFaceShell *&shell, MbeCopyMode sameShell, - RPArray *items = c3d_null ); // \ru Построение оболочки штамповки. \en Construction of a stamping shell. + RPArray *items = nullptr ); // \ru Построение оболочки штамповки. \en Construction of a stamping shell. // \ru Получить параметры. \en Get the parameters. void GetParameters( MbToolStampingValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_stitch_solid.h b/C3d/Include/cr_stitch_solid.h index 656074d..bc0ceb8 100644 --- a/C3d/Include/cr_stitch_solid.h +++ b/C3d/Include/cr_stitch_solid.h @@ -78,11 +78,11 @@ public : size_t estSimpleCnt = 0; for ( i = 0; i < setsCnt; ++i ) { Creators * creatorsSet = creatorsData[i]; - if ( creatorsSet != c3d_null ) { + if ( creatorsSet != nullptr ) { size_t count = creatorsSet->size(); for ( size_t j = 0; j < count; ++j ) { MbCreator * creator = (*creatorsSet)[j]; - if ( creator != c3d_null ) + if ( creator != nullptr ) estSimpleCnt += creator->GetCreatorsCount( ct_SimpleCreator ); } } @@ -93,13 +93,13 @@ public : c3d::CreatorSPtr creator; for ( i = 0; i < setsCnt; ++i ) { Creators * creatorsSet = creatorsData[i]; - if ( creatorsSet != c3d_null ) { + if ( creatorsSet != nullptr ) { size_t count = creatorsSet->size(); RPArray * creators = new RPArray( count, 1 ); creatorsArray.push_back( creators ); for ( size_t j = 0; j < count; ++j ) { // важен порядок перебора creator = (*creatorsSet)[j]; - if ( creator != c3d_null ) { + if ( creator != nullptr ) { creators->push_back( creator ); if ( creator->IsA() == ct_SimpleCreator ) simpleCreators.push_back( creator ); @@ -125,12 +125,12 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object @@ -146,7 +146,7 @@ public: virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction virtual void SetYourVersion( VERSION version, bool forAll ); diff --git a/C3d/Include/cr_surface_spline.h b/C3d/Include/cr_surface_spline.h index d984d2c..6494965 100644 --- a/C3d/Include/cr_surface_spline.h +++ b/C3d/Include/cr_surface_spline.h @@ -60,15 +60,15 @@ public : // \ru Общие функции строителя. \en The common functions of the creator. virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * iReg = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame ( const MbCreator &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual MbePrompt GetPropertyName(); // \ru Дать имя свойства объекта \en Get the object property name virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -78,7 +78,7 @@ public : virtual void SetBasisPoints( const MbControlData3D & ); // \ru Изменить объект по контрольным точкам. \en Change the object by control points. // \ru Построить кривую по журналу построения \en Create a curve from the history tree - virtual bool CreateWireFrame( MbWireFrame *&, MbeCopyMode, RPArray * items = c3d_null ); + virtual bool CreateWireFrame( MbWireFrame *&, MbeCopyMode, RPArray * items = nullptr ); /** \} */ diff --git a/C3d/Include/cr_swept_solid.h b/C3d/Include/cr_swept_solid.h index fc14a99..3e7e73e 100644 --- a/C3d/Include/cr_swept_solid.h +++ b/C3d/Include/cr_swept_solid.h @@ -78,10 +78,10 @@ public : \{ */ virtual MbeCreatorType IsA() const = 0; // \ru Тип элемента \en A type of element virtual MbeCreatorType Type() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ) = 0; // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ) = 0; // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ) = 0; // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ) = 0; // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ) = 0; // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ) = 0; // \ru Повернуть вокруг оси \en Rotate around an axis virtual bool IsSame( const MbCreator &, double accuracy ) const = 0; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSimilar( const MbCreator & ) const = 0; // \ru Являются ли объекты подобными. \en Whether the objects are similar @@ -99,7 +99,7 @@ public : \en \name Common functions of the rigid solid (forming operations). \{ */ virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction virtual MbFaceShell * InitShell( bool in ) = 0; virtual void InitBasis( RPArray & ) = 0; diff --git a/C3d/Include/cr_symmetry_solid.h b/C3d/Include/cr_symmetry_solid.h index 03e8f13..1cd5ff5 100644 --- a/C3d/Include/cr_symmetry_solid.h +++ b/C3d/Include/cr_symmetry_solid.h @@ -44,10 +44,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object @@ -60,7 +60,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction private : // \ru Объявление оператора присваивания без реализации, чтобы не было присваивания по умолчанию. \en The declaration of the assignment operator without implementation to prevent an assignment by default. diff --git a/C3d/Include/cr_thin_sheet.h b/C3d/Include/cr_thin_sheet.h index 160fc0b..4aaef57 100644 --- a/C3d/Include/cr_thin_sheet.h +++ b/C3d/Include/cr_thin_sheet.h @@ -43,10 +43,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object @@ -62,7 +62,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid solid virtual bool CreateShell( MbFaceShell *&shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction // \ru Дать параметры. \en Get the parameters. void GetParameters( SweptValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_thin_shell_solid.h b/C3d/Include/cr_thin_shell_solid.h index 9ff8943..a63bda5 100644 --- a/C3d/Include/cr_thin_shell_solid.h +++ b/C3d/Include/cr_thin_shell_solid.h @@ -64,10 +64,10 @@ private : public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object @@ -79,7 +79,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction /// \ru Дать параметры. \en Get the parameters. void GetParameters( SweptValues & params ) const { params = parameters; } diff --git a/C3d/Include/cr_transformed_solid.h b/C3d/Include/cr_transformed_solid.h index 938c151..c6b5628 100644 --- a/C3d/Include/cr_transformed_solid.h +++ b/C3d/Include/cr_transformed_solid.h @@ -43,12 +43,12 @@ public: // \ru Деструктор \en Destructor public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy virtual bool IsSame( const MbCreator & other, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool SetEqual ( const MbCreator & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать по матрице \en Transform according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг по вектору \en Translation by a vector - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать по матрице \en Transform according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг по вектору \en Translation by a vector + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -58,7 +58,7 @@ public: // \ru Общие функции математического объе /// \ru Построение оболочки \en Creation of a shell virtual bool CreateShell( MbFaceShell *&, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); virtual void Refresh( MbFaceShell & ); ///< \ru Обновить форму оболочки \en Update shape of the shell // \ru Добавить модификацию по матрице \en Add a modification by a matrix void AddMatrix( MbFaceShell &, const MbMatrix3D & ); diff --git a/C3d/Include/cr_truncated_shell.h b/C3d/Include/cr_truncated_shell.h index ca2993a..f0801be 100644 --- a/C3d/Include/cr_truncated_shell.h +++ b/C3d/Include/cr_truncated_shell.h @@ -68,11 +68,11 @@ private: public: virtual MbeCreatorType IsA() const; // \ru Тип элемента \en Type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию \en Create a copy + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -90,7 +90,7 @@ public: // \ru Построение оболочки по исходным данным \en Construction of a shell from the given data virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); // \ru Установить номера выбраных граней усекаемого тела \en Set indices of selected faces of the solid being truncated. void SetSelIndices( const std::vector & selInds ); diff --git a/C3d/Include/cr_union_solid.h b/C3d/Include/cr_union_solid.h index 0dd7d06..c4b5076 100644 --- a/C3d/Include/cr_union_solid.h +++ b/C3d/Include/cr_union_solid.h @@ -79,10 +79,10 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeCreatorType IsA() const; // \ru Тип элемента \en A type of element - virtual MbCreator & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию \en Create a copy - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbCreator & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию \en Create a copy + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual MbePrompt GetPropertyName(); // \ru Выдать заголовок свойства объекта \en Get a name of object property virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -102,7 +102,7 @@ public : // \ru Общие функции твердого тела \en Common functions of solid virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); // \ru Построение \en Construction + RPArray * items = nullptr ); // \ru Построение \en Construction virtual void SetYourVersion( VERSION version, bool forAll ); @@ -115,9 +115,9 @@ public: /// \ru Общее количество строителей. \en Total count of creators. size_t GetCreatorsCount() const { return creators.size(); } /// \ru Дать строитель. \en Get the creator. - const MbCreator * GetCreator( size_t k ) const { return ((k < creators.size()) ? &(*creators[k]) : c3d_null); } + const MbCreator * GetCreator( size_t k ) const { return ((k < creators.size()) ? &(*creators[k]) : nullptr); } /// \ru Дать строитель. \en Get the creator. - MbCreator * SetCreator( size_t k ) { return ((k < creators.size()) ? &(*creators[k]) : c3d_null); } + MbCreator * SetCreator( size_t k ) { return ((k < creators.size()) ? &(*creators[k]) : nullptr); } public: /// \ru Собрать группы общих строителей тел. \en Collect groups of shared creators. @@ -142,8 +142,8 @@ IMPL_PERSISTENT_OPS( MbUnionSolid ) Before the operation a shell set is united into a single shell which contains all the faces of shell set. Union of the intersected shells is performed if necessary. The function simultaneously constructs the shell and creates its constructor. \n \~ - \param[in] solid - \ru Оболочка, с которой выполняется булева операция объединённого множества оболочек (может быть c3d_null). - \en The shell the Boolean operation of the united shell set is performed with (can be c3d_null). \~ + \param[in] solid - \ru Оболочка, с которой выполняется булева операция объединённого множества оболочек (может быть nullptr). + \en The shell the Boolean operation of the united shell set is performed with (can be nullptr). \~ \param[in] sameShell - \ru Способ копирования граней оболочки. \en Method of shell faces copying. \~ \param[in] creators - \ru Строители набора оболочек. @@ -188,7 +188,7 @@ MATH_FUNC (MbCreator *) CreateUnion( MbFaceShell * solid, bool isArray, // \ru Флаг массива \en Flag of array MbResultType & res, MbFaceShell *& shell, - RPArray * notGluedShells = c3d_null ); + RPArray * notGluedShells = nullptr ); //------------------------------------------------------------------------------ diff --git a/C3d/Include/creator.h b/C3d/Include/creator.h index 0f2af4b..fb4e083 100644 --- a/C3d/Include/creator.h +++ b/C3d/Include/creator.h @@ -251,7 +251,7 @@ public : \return \ru Копия объекта. \en The object copy. \~ */ - virtual MbCreator & Duplicate( MbRegDuplicate * iReg = c3d_null ) const = 0; + virtual MbCreator & Duplicate( MbRegDuplicate * iReg = nullptr ) const = 0; /** \brief \ru Преобразовать согласно матрице. \en Transform according to the matrix. \~ @@ -274,7 +274,7 @@ public : \param[in] iReg - \ru Регистратор. \en Registrator. \~ */ - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = c3d_null ) = 0; + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = nullptr ) = 0; /** \brief \ru Сдвинуть вдоль вектора. \en Translate along a vector. \~ @@ -297,7 +297,7 @@ public : \param[in] iReg - \ru Регистратор. \en Registrator. \~ */ - virtual void Move ( const MbVector3D & to, MbRegTransform * iReg = c3d_null ) = 0; + virtual void Move ( const MbVector3D & to, MbRegTransform * iReg = nullptr ) = 0; /** \brief \ru Повернуть объект вокруг оси. \en Rotate an object about the axis. \~ @@ -322,7 +322,7 @@ public : \param[in] iReg - \ru Регистратор. \en Registrator. \~ */ - virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = c3d_null ) = 0; + virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = nullptr ) = 0; /** \brief \ru Являются ли объекты равными? \en Determine whether an object is equal? \~ @@ -360,13 +360,13 @@ public : \en A shell to be modified or a new shell. \~ \param[in] sameShell - \ru Полнота копирования элементов при построении. \en Whether to perform complete copying of elements while constructing. \~ - \param[in] items - \ru Контейнер для складывания элементов невыполненных построений (может быть c3d_null). - \en Container for the elements of not performed constructions (can be c3d_null). \~ + \param[in] items - \ru Контейнер для складывания элементов невыполненных построений (может быть nullptr). + \en Container for the elements of not performed constructions (can be nullptr). \~ \return \ru Выполнено ли построение. \en Whether the construction is performed. \~ */ virtual bool CreateShell( MbFaceShell *& shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); /** \brief \ru Построить оболочку по исходным данным. \en Create a shell from the initial data. \~ @@ -376,13 +376,13 @@ public : \en A shell to be modified or a new shell. \~ \param[in] sameShell - \ru Полнота копирования элементов при построении. \en Whether to perform complete copying of elements while constructing. \~ - \param[in] items - \ru Контейнер для складывания элементов невыполненных построений (может быть c3d_null). - \en Container for the elements of not performed constructions (can be c3d_null). \~ + \param[in] items - \ru Контейнер для складывания элементов невыполненных построений (может быть nullptr). + \en Container for the elements of not performed constructions (can be nullptr). \~ \return \ru Выполнено ли построение. \en Whether the construction is performed. \~ */ bool CreateShell( c3d::ShellSPtr & shell, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); /** \brief \ru Построить проволочный каркас по исходным данным. \en Create a wire-frame from the source data. \~ @@ -392,13 +392,13 @@ public : \en A frame to be modified or a new frame. \~ \param[in] sameShell - \ru Полнота копирования элементов при построении. \en Whether to perform complete copying of elements while constructing. \~ - \param[in] items - \ru Контейнер для складывания элементов невыполненных построений (может быть c3d_null). - \en Container for the elements of not performed constructions (can be c3d_null). \~ + \param[in] items - \ru Контейнер для складывания элементов невыполненных построений (может быть nullptr). + \en Container for the elements of not performed constructions (can be nullptr). \~ \return \ru Выполнено ли построение. \en Whether the construction is performed. \~ */ virtual bool CreateWireFrame( MbWireFrame *& frame, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); /** \brief \ru Построить проволочный каркас по исходным данным. \en Create a wire-frame from the source data. \~ @@ -421,13 +421,13 @@ public : \en A frame to be modified or a new frame. \~ \param[in] sameShell - \ru Полнота копирования элементов при построении. \en Whether to perform complete copying of elements while constructing. \~ - \param[in] items - \ru Контейнер для складывания элементов невыполненных построений (может быть c3d_null). - \en Container for the elements of not performed constructions (can be c3d_null). \~ + \param[in] items - \ru Контейнер для складывания элементов невыполненных построений (может быть nullptr). + \en Container for the elements of not performed constructions (can be nullptr). \~ \return \ru Выполнено ли построение. \en Whether the construction is performed. \~ */ virtual bool CreatePointFrame( MbPointFrame *& frame, MbeCopyMode sameShell, - RPArray * items = c3d_null ); + RPArray * items = nullptr ); /** \brief \ru Построить точечный каркас по исходным данным. \en Create a point-frame from the source data. \~ diff --git a/C3d/Include/creator_transaction.h b/C3d/Include/creator_transaction.h index bb5a16b..02df239 100644 --- a/C3d/Include/creator_transaction.h +++ b/C3d/Include/creator_transaction.h @@ -68,7 +68,7 @@ public: transactions.reserve( iCount ); for ( size_t i = 0; i < iCount; i++ ) { MbCreator * creator = const_cast( creators[i] ); - if ( creator != c3d_null ) { + if ( creator != nullptr ) { creator->AddRef(); transactions.push_back( creator ); } @@ -84,7 +84,7 @@ public: virtual bool RebuildItem( MbeCopyMode sameShell, RPArray * items, IProgressIndicator * progInd ); /// \ru Очистить присланный журнал и скопировать в него строители. \en Clear the given history tree and copy the creators to it. - void CreatorsCopy ( MbTransactions & other, MbRegDuplicate * iReg = c3d_null ) const; + void CreatorsCopy ( MbTransactions & other, MbRegDuplicate * iReg = nullptr ) const; /// \ru Очистить журнал и скопировать в него строители из присланного журнала. \en Clear the history tree and copy the creators from the given history tree to it. void CreatorsAssign ( const MbTransactions & other ); /// \ru Сделать строители равными соответствующим строителям присланного журнала, если строители подобны. \en Make the creators equal to the creators from the given history tree if the creators are similar. @@ -94,11 +94,11 @@ public: // Посчитать внутренние построители по типу. \en Count internal creators by type. size_t GetCreatorsCount( MbeCreatorType ct ) const; /// \ru Преобразовать согласно матрице строители. \en Transform the creators according to the matrix. - void CreatorsTransform( const MbMatrix3D &, MbRegTransform * = c3d_null ); + void CreatorsTransform( const MbMatrix3D &, MbRegTransform * = nullptr ); /// \ru Сдвинуть вдоль вектора строители. \en Move creators along the vector. - void CreatorsMove ( const MbVector3D &, MbRegTransform * = c3d_null ); + void CreatorsMove ( const MbVector3D &, MbRegTransform * = nullptr ); /// \ru Повернуть вокруг оси строители на заданный угол. \en Rotate the creators about the axis by the given angle. - void CreatorsRotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + void CreatorsRotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); /// \ru Выдать количество строителей. \en Get the creators count. size_t GetCreatorsCount() const { return transactions.size(); } /// \ru Зарезервировать место для строителей. \en Reserve space for creators. @@ -121,7 +121,7 @@ public: c3d::CreatorSPtr creator; creators.reserve( creators.size() + addCnt ); for ( size_t i = 0; i < addCnt; ++i ) { - if ( transactions[i] != c3d_null ) { + if ( transactions[i] != nullptr ) { creator = static_cast(&transactions[i]->Duplicate( iReg )); creators.push_back( creator ); ::DetachItem( creator ); @@ -145,7 +145,7 @@ public: c3d::CreatorSPtr creator; for ( size_t i = 0, addCnt = creators.size(); i < addCnt; ++i ) { creator = creators[i]; - if ( creator != c3d_null ) { + if ( creator != nullptr ) { creator->AddRef(); transactions.push_back( creator ); ::DetachItem( creator ); diff --git a/C3d/Include/cur_arc.h b/C3d/Include/cur_arc.h index b543bc4..05b64af 100644 --- a/C3d/Include/cur_arc.h +++ b/C3d/Include/cur_arc.h @@ -377,12 +377,12 @@ public : \en \name Common functions of a geometric object. \{ */ virtual MbePlaneType IsA() const; // \ru Тип элемента \en A type of element - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual ( const MbPlaneItem & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать согласно матрице \en Transform according to the matrix - virtual void Move ( const MbVector &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот \en Rotation + virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать согласно матрице \en Transform according to the matrix + virtual void Move ( const MbVector &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот \en Rotation virtual double DistanceToPoint( const MbCartPoint & ) const;// \ru Расстояние до точки \en Distance to a point virtual bool DistanceToPointIfLess( const MbCartPoint & toP, double & d ) const; // \ru Расстояние до точки, если оно меньше d \en Distance to a point if it is less than 'd' virtual void AddYourGabaritTo( MbRect & r ) const; // \ru Добавь свой габарит в прямой прям-к \en Add own bounding rectangle to an upright bounding rectangle @@ -445,7 +445,7 @@ public : /** \ru \name Общие функции кривой \en \name Common functions of the curve \{ */ - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double GetMetricLength() const; // \ru Выдать метрическую длину кривой \en Get the metric length of the curve virtual double CalculateMetricLength() const; // \ru Посчитать метрическую длину \en Calculate metric length @@ -459,7 +459,7 @@ public : virtual double PointProjection( const MbCartPoint & pnt ) const; // \ru Проекция точки на кривую \en Projection of a point onto the curve virtual bool NearPointProjection( const MbCartPoint & pnt, double xEpsilon, double yEpsilon, - double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Projection of the point onto the curve or its extension in the projection region + double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Projection of the point onto the curve or its extension in the projection region // \ru Вычисление всех касательных к кривой из данной точки \en Calculation of all the tangents to the curve from a given point virtual void TangentPoint( const MbCartPoint & pnt, SArray & tFind ) const; // \ru Вычисление всех перпендикуляров к кривой из данной точки \en Calculation of all the perpendiculars to the curve from a given point @@ -949,15 +949,15 @@ public : void Init( const MbCartPoint & pc, const MbCartPoint & p1, const MbCartPoint & p2, int initSense ); // \ru Инициализация по начальной и конечной точкам и 1/2 угла раствора дуги \en Initialization by the starting and end points and 1/2 of the arc opening angle - // \ru Если diskrData != c3d_null, то округлить радиус и скорректировать первую \en If diskrData != c3d_null, then round the radius and correct the first + // \ru Если diskrData != nullptr, то округлить радиус и скорректировать первую \en If diskrData != nullptr, then round the radius and correct the first // \ru Или вторую точку (зависит от correctFirstPnt) \en Or the second point (depends on correctFirstPnt) /** \brief \ru Инициализировать дугу окружность. \en Initialize a circular arc. \~ \details \ru Инициализация происходит по начальной и конечной точкам и 1/2 угла раствора дуги. - Если diskrData != c3d_null, радиус округляется и корректируется первая + Если diskrData != nullptr, радиус округляется и корректируется первая или вторая точка (зависит от correctFirstPnt). \en The initialization is performed by the starting and end points and 1/2 of the arc opening angle. - If diskrData != c3d_null, the radius is rounded and the first + If diskrData != nullptr, the radius is rounded and the first or the second point is corrected (depends on correctFirstPnt). \~ \param[in] a2 - \ru 1/2 угла раствора дуги окружности. \en 1/2 of the circular arc opening angle. \~ @@ -973,7 +973,7 @@ public : correctFirstPnt == true - the first point is to be corrected. \~ */ void Init( double a2, MbCartPoint & p1, MbCartPoint & p2, - const DiskreteLengthData * diskrData = c3d_null, + const DiskreteLengthData * diskrData = nullptr, bool correctFirstPnt = true ); // \ru Инициализация эллипса \en Ellipse initialization /** \brief \ru Инициализировать эллипс. diff --git a/C3d/Include/cur_arc3d.h b/C3d/Include/cur_arc3d.h index 8f94db3..6197b9c 100644 --- a/C3d/Include/cur_arc3d.h +++ b/C3d/Include/cur_arc3d.h @@ -303,10 +303,10 @@ public : \en \name Common functions of a geometric object. \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal virtual double DistanceToPoint( const MbCartPoint3D & ) const;// \ru Расстояние до точки \en Distance to a point @@ -359,13 +359,13 @@ public : virtual void Explore( double & t, bool ext, MbCartPoint3D & pnt, MbVector3D & fir, MbVector3D * sec, MbVector3D * thir ) const; /** \} */ - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step ( double t, double sag ) const; // \ru Вычисление шага по стрелке прогиба. \en Calculation of parameter step by the sag. virtual double DeviationStep( double t, double angle ) const; // \ru Вычисление шага по углу отклонения нормали. \en Calculation of parameter step by the deviation angle. virtual double MetricStep ( double t, double length ) const; // \ru Вычисление шага параметра по длине. \en Calculation of parameter step by the given length. // \ru Все проекции точки на кривую \en All the projections of a point onto the curve - virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Ближайшая проекция точки на кривую \en The closest projection of a point onto the curve + virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Ближайшая проекция точки на кривую \en The closest projection of a point onto the curve virtual MbNurbs3D * NurbsCurve( const MbCurveIntoNurbsInfo & ) const; virtual MbCurve3D * NurbsCurve( const MbNurbsParameters & ) const; // \ru Построить Nurbs-копию кривой \en Construct NURBS-copy of the curve @@ -380,10 +380,10 @@ public : virtual size_t GetCount() const; virtual void GetPointsByEvenLengthDelta( size_t n, std::vector & pnts ) const; // \ru Выдать n точек кривой с равными интервалами по длине дуги \en Get n points of curves equally spaced by the arc length - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of a curve + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of a curve virtual MbCurve * GetMapPsp( const MbMatrix3D &, double zNear, - MbRect1D * pRgn = c3d_null ) const; + MbRect1D * pRgn = nullptr ) const; virtual double GetRadius() const; // \ru Дать физический радиус объекта или ноль, если это невозможно. \en Get the physical radius of the object or null if it impossible. virtual bool GetCircleAxis ( MbAxis3D & ) const; // \ru Дать ось кривой \en Get the axis of the curve diff --git a/C3d/Include/cur_b_spline.h b/C3d/Include/cur_b_spline.h index 3f5ed6f..794763e 100644 --- a/C3d/Include/cur_b_spline.h +++ b/C3d/Include/cur_b_spline.h @@ -56,12 +56,12 @@ public: // \ru Общие функции математического объекта \en The common functions of the mathematical object virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual( const MbSpaceItem & init ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void CalculateMesh( const MbStepData & stepData, const MbFormNote & note, MbMesh & mesh ) const; // \ru Построить полигональную копию mesh. \en Build polygonal copy mesh. virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object @@ -87,7 +87,7 @@ public: virtual MbNurbs3D * NurbsCurve( const MbCurveIntoNurbsInfo & ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction void CalculateOnePolygon( size_t i, const MbStepData & stepData, MbPolygon3D * polygon ) const; // \ru Pассчитать полигон по параметру T \en Calculate polygon of the parameter T // \ru Расчет весовых функций и их первых, вторых и третьих производных \en Calculation of the weight functions and their first, second and third derivatives diff --git a/C3d/Include/cur_bezier.h b/C3d/Include/cur_bezier.h index 0620e3d..00266d0 100644 --- a/C3d/Include/cur_bezier.h +++ b/C3d/Include/cur_bezier.h @@ -222,10 +222,10 @@ public : virtual MbePlaneType IsA() const; // \ru Тип элемента \en A type of element virtual bool SetEqual( const MbPlaneItem & ); // \ru Сделать элементы равными \en Make the elements equal virtual bool IsSame( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли кривая curve копией данной кривой ? \en Whether the 'curve' curve is duplicate of current curve. - virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector & to, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот \en Rotation - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector & to, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот \en Rotation + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element /** \} */ /** \ru \name Функции инициализации сплайна. \en \name Spline initialization functions. @@ -312,7 +312,7 @@ public : virtual MbCurve * Trimmed( double t1, double t2, int sense ) const; virtual MbContour * NurbsContour() const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменение направления кривой на противоположное \en Change to the opposite direction of a curve + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменение направления кривой на противоположное \en Change to the opposite direction of a curve virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -474,7 +474,7 @@ public : virtual bool DistanceAlong( double & t, double len, int curveDir, double eps = Math::LengthEps, VERSION version = Math::DefaultMathVersion() ) const; - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? // \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. virtual bool SetContinuousDerivativeLength( VERSION version, double epsilon = EPSILON ); diff --git a/C3d/Include/cur_bezier3d.h b/C3d/Include/cur_bezier3d.h index 6695acf..ada88de 100644 --- a/C3d/Include/cur_bezier3d.h +++ b/C3d/Include/cur_bezier3d.h @@ -112,12 +112,12 @@ public : // \ru Общие функции математического объекта \en The common functions of the mathematical object virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Поворот \en Rotation + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Поворот \en Rotation virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object @@ -137,7 +137,7 @@ public : virtual double Step( double t, double sag ) const; // \ru Вычисление шага аппроксимации \en Calculate step of approximation virtual double DeviationStep( double t, double angle ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual bool Break( MbBezier3D &, double t1, double t2 ) const; // \ru Разбить на две части \en Split into two parts @@ -180,8 +180,8 @@ public : ptrdiff_t GetSplinesCount() const { return splinesCount; } // \ru Количество сплайнов \en The number of splines // \ru Функции только 3D кривой \en Function for 3D-curve - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of curve + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of curve virtual size_t GetCount() const; @@ -191,7 +191,7 @@ public : virtual bool DistanceAlong( double & t, double len, int curveDir, double eps = Math::metricPrecision, VERSION version = Math::DefaultMathVersion() ) const; - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? // \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. virtual bool SetContinuousDerivativeLength( VERSION version, double epsilon = EPSILON ); diff --git a/C3d/Include/cur_bridge3d.h b/C3d/Include/cur_bridge3d.h index 6b178f6..b7c5f51 100644 --- a/C3d/Include/cur_bridge3d.h +++ b/C3d/Include/cur_bridge3d.h @@ -67,13 +67,13 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem &, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли объект копией \en Whether the object is a copy virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal virtual bool IsSimilar( const MbSpaceItem & init ) const; // \ru Сделать элементы равными \en Make the elements equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void AddYourGabaritTo( MbCube & ) const; // \ru Добавь свой габарит в куб \en Add own bounding box into a bounding box virtual void Refresh(); // \ru Сбросить все временные данные \en Flush all the temporary data virtual void PrepareIntegralData( const bool forced ) const; // \ru Рассчитать временные (mutable) данные объекта. \en Calculate temporary (mutable) data of an object. @@ -97,7 +97,7 @@ public: virtual void Explore( double & t, bool ext, MbCartPoint3D & pnt, MbVector3D & fir, MbVector3D * sec, MbVector3D * thir ) const; - virtual void Inverse ( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse ( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step ( double t, double sag ) const; // \ru Вычисление шага аппроксимации \en Calculation of the approximation step virtual double DeviationStep( double t, double angle ) const; diff --git a/C3d/Include/cur_character_curve.h b/C3d/Include/cur_character_curve.h index 630c735..bd7a9a7 100644 --- a/C3d/Include/cur_character_curve.h +++ b/C3d/Include/cur_character_curve.h @@ -71,12 +71,12 @@ public: // \ru Общие функции геометрического объекта. \en Common functions of a geometric object. virtual MbePlaneType IsA() const; // \ru Тип элемента \en A type of element - virtual MbPlaneItem & Duplicate ( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbPlaneItem & Duplicate ( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Кривая есть копия этой кривой ? \en Is a curve a copy of this curve? virtual bool SetEqual ( const MbPlaneItem & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void AddYourGabaritTo( MbRect & ) const; // \ru Добавь в прям-к свой габарит \en Add own bounding rectangle to the bounding rectangle virtual void PrepareIntegralData( const bool forced ) const; // \ru Рассчитать временные (mutable) данные объекта. \en Calculate temporary (mutable) data of an object. @@ -103,7 +103,7 @@ public: virtual double GetLengthEvaluation() const; // \ru Оценка метрической длины кривой \en Metric length evaluation of a curve virtual void CalculateGabarit( MbRect & ) const; // \ru Определить габаритный прямоугольник кривой. - virtual void Inverse ( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse ( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual size_t GetCount () const; // \ru Определить количество разбиений для прохода в операциях. \en Define the number of splittings for one passage in operations. virtual MbNurbs * NurbsCurve ( const MbCurveIntoNurbsInfo & ) const; diff --git a/C3d/Include/cur_character_curve3d.h b/C3d/Include/cur_character_curve3d.h index 2fd24e3..8885f0e 100644 --- a/C3d/Include/cur_character_curve3d.h +++ b/C3d/Include/cur_character_curve3d.h @@ -79,12 +79,12 @@ public: VISITING_CLASS( MbCharacterCurve3D ) virtual MbeSpaceType IsA () const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Кривая есть копия этой кривой ? \en Is a curve a copy of this curve? virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal - virtual void Transform ( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform ( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void AddYourGabaritTo( MbCube & ) const; virtual void PrepareIntegralData( const bool forced ) const; // \ru Рассчитать временные (mutable) данные объекта. \en Calculate temporary (mutable) data of an object. @@ -110,7 +110,7 @@ public: virtual double Step ( double t, double sag ) const; ///< \ru Вычисление шага параметра по величине прогиба кривой \en Calculation of parameter step by value of sag of the curve virtual double DeviationStep( double t, double ang ) const; ///< \ru Вычисление шага параметра по углу отклонения касательной \en Calculation of parameter by the angle of tangent deviation - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double GetMetricLength() const; // \ru Метрическая длина кривой \en Metric length of a curve virtual double GetLengthEvaluation() const; @@ -118,8 +118,8 @@ public: virtual bool GetPlacement( MbPlacement3D & place, PlanarCheckParams params = PlanarCheckParams() ) const; // \ru Заполнить плейсемент, если кривая плоская \en Fill the placement if curve is planar // \ru Дать плоскую кривую и плейсмент, если пространственная кривая плоская (после использования вызывать DeleteItem на двумерную кривую) \en Get a planar curve and placement, if the spatial curve is planar (after using the DeleteItem must be called on a three-dimensional curve) virtual bool GetPlaneCurve ( MbCurve *& curve2d, MbPlacement3D & place, bool saveParams, PlanarCheckParams params = PlanarCheckParams() ) const; - virtual MbCurve * GetMap( const MbMatrix3D & into, MbRect1D * pRegion = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of curve + virtual MbCurve * GetMap( const MbMatrix3D & into, MbRect1D * pRegion = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of curve // \ru Определить количество разбиений для прохода в операциях. \en Define the number of splittings for one passage in operations. virtual size_t GetCount() const; virtual MbNurbs3D * NurbsCurve( const MbCurveIntoNurbsInfo & ) const; diff --git a/C3d/Include/cur_cone_spiral.h b/C3d/Include/cur_cone_spiral.h index 61cd5da..b41d523 100644 --- a/C3d/Include/cur_cone_spiral.h +++ b/C3d/Include/cur_cone_spiral.h @@ -197,7 +197,7 @@ public: public: // \ru Общие функции математического объекта. \en The common functions of the mathematical object. virtual MbeSpaceType IsA() const; // \ru Получить тип. \en Get a type. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Создать копию. \en Create a copy. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Создать копию. \en Create a copy. virtual bool IsSame( const MbSpaceItem &, double accuracy = LENGTH_EPSILON ) const; virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. @@ -223,18 +223,18 @@ public: virtual double DeviationStep( double t, double angle ) const; // \ru Вычисление шага по углу отклонения нормали. \en Calculation of parameter step by the deviation angle. virtual double MetricStep ( double t, double length ) const; // \ru Вычисление шага параметра по длине. \en Calculation of parameter step by the given length. - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; virtual MbCurve3D * Trimmed( double t1, double t2, int sense ) const; // \ru Создание усеченной кривой. \en Creation of a trimmed curve. - virtual void Inverse( MbRegTransform * = c3d_null ); // \ru Изменить направление. \en Change the direction. + virtual void Inverse( MbRegTransform * = nullptr ); // \ru Изменить направление. \en Change the direction. virtual MbNurbs3D * NurbsCurve( const MbCurveIntoNurbsInfo & ) const; virtual double CalculateLength( double t1, double t2 ) const; // \ru Ближайшая проекция точки на спираль. \en The nearest point projection on the spiral. - virtual bool NearPointProjection( const MbCartPoint3D & p, double & t, bool ext, MbRect1D * tRange = c3d_null ) const; + virtual bool NearPointProjection( const MbCartPoint3D & p, double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Частные функции спирали. \en Special functions for spiral. virtual bool SetStep( double s ); // \ru Изменить шаг. \en Change the step. diff --git a/C3d/Include/cur_contour.h b/C3d/Include/cur_contour.h index 8d7d49f..c63d9a2 100644 --- a/C3d/Include/cur_contour.h +++ b/C3d/Include/cur_contour.h @@ -102,13 +102,13 @@ public: virtual MbePlaneType IsA() const; // \ru Тип элемента \en A type of element virtual MbePlaneType Type() const; // \ru Тип элемента \en A type of element - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element. + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element. virtual bool IsSimilar ( const MbPlaneItem & ) const; // \ru Являются ли элементы подобными \en Whether the elements are similar. virtual bool SetEqual( const MbPlaneItem & ); // \ru Сделать элементы равными \en Make equal elements. virtual bool IsSame( const MbPlaneItem &, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли кривая curve копией данной кривой ? \en Whether the curve "curve" is a copy of a given curve? - virtual void Transform( const MbMatrix &, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix. - virtual void Move( const MbVector &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг \en Translation. - virtual void Rotate( const MbCartPoint &, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот \en Rotation. + virtual void Transform( const MbMatrix &, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix. + virtual void Move( const MbVector &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг \en Translation. + virtual void Rotate( const MbCartPoint &, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот \en Rotation. /** \brief \ru Построить эквидистантную кривую, смещённую на заданное расстояние. \en Construct the equidistant curve which is shifted by the given value. \~ @@ -128,8 +128,8 @@ public: You can use the OffsetContour function instead this function. \~ \param[in] rad - \ru Величина эквидистантного смещения. \en Equidistant offset. \~ - \return \ru Возвращает эквидистантный контур, если получилось его построить, иначе - c3d_null. - \en Returns the equidistant curve if it's possible to build it, otherwise - c3d_null. \~ + \return \ru Возвращает эквидистантный контур, если получилось его построить, иначе - nullptr. + \en Returns the equidistant curve if it's possible to build it, otherwise - nullptr. \~ */ virtual MbCurve * Offset( double rad ) const; // \ru Смещение контура. \en Shift of a contour @@ -300,7 +300,7 @@ public: virtual double PointProjection( const MbCartPoint & ) const; // \ru Проекция точки на кривую \en Point projection on the curve virtual bool NearPointProjection( const MbCartPoint &, double xEpsilon, double yEpsilon, - double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Point projection on the curve or its extension in the projection search area + double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Point projection on the curve or its extension in the projection search area /** \brief \ru Параметрическое расстояние до ближайшей границы. \en Parametric distance to the nearest boundary. @@ -416,7 +416,7 @@ public: void SetSense( int sense ); // \ru Изменить направление обхода контура \en Change the traverse direction of the contour - virtual void Inverse( MbRegTransform * = c3d_null ); + virtual void Inverse( MbRegTransform * = nullptr ); // \ru Согласовать параметризацию сегментов, если до инвертации она была согласованной. \en Agree on segment parameterization, if it was consistent before inversion. bool NormalizeReparametrization(); virtual size_t GetCount() const; // \ru Количество разбиений для прохода в операциях \en The number of partitions for passage in the operations @@ -464,7 +464,7 @@ public: \param[in] epsilon - \ru Погрешность вычисления. \en The accuracy of the calculation. \~ */ - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; /** \brief \ru Устранить разрывы производных по длине в стыках сегментов. \en Eliminate the discontinuities of the derivatives of the length of the joints of the segments. @@ -778,13 +778,13 @@ void MbContour::GetCornerParams( Params & params ) const double pLength = 0.0; const MbCurve * segment = GetSegment( 0 ); - if ( segment != c3d_null ) + if ( segment != nullptr ) pLength = segment->GetParamLength(); for ( size_t segInd = 1; segInd < segCount; ++segInd ) { params.push_back( pLength ); segment = GetSegment( segInd ); - if ( segment != c3d_null ) + if ( segment != nullptr ) pLength += segment->GetParamLength(); } } diff --git a/C3d/Include/cur_contour3d.h b/C3d/Include/cur_contour3d.h index a39486e..69b910d 100644 --- a/C3d/Include/cur_contour3d.h +++ b/C3d/Include/cur_contour3d.h @@ -92,13 +92,13 @@ public: virtual MbeSpaceType IsA() const; // \ru Тип элемента \en Type of element virtual MbeSpaceType Type() const; // \ru Групповой тип элемента \en Group element type - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли объект копией \en Whether the object is a copy virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual double DistanceToPoint( const MbCartPoint3D & ) const; // \ru Расстояние до точки \en Distance to a point virtual void PrepareIntegralData( const bool forced ) const; // \ru Рассчитать временные (mutable) данные объекта. \en Calculate temporary (mutable) data of an object. @@ -172,7 +172,7 @@ public: virtual MbNurbs3D * NurbsCurve( const MbCurveIntoNurbsInfo & ) const; virtual MbCurve3D * Trimmed( double t1, double t2, int sense ) const; // \ru Создание усеченной кривой \en Creation of a trimmed curve // \ru Изменить направление \en Change direction - virtual void Inverse( MbRegTransform * iReg = c3d_null ); + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Согласовать параметризацию сегментов, если до инвертации она была согласованной. \en Agree on segment parameterization, if it was consistent before inversion. bool NormalizeReparametrization(); /// \ru Подобные ли кривые для объединения (слива). \en Whether the curves to union (joining) are similar. @@ -180,7 +180,7 @@ public: // \ru Все проекции точки на кривую \en All point projections on the curve // \ru Ближайшая проекция точки на кривую \en The nearest point projection to the curve - virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = c3d_null ) const; + virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = nullptr ) const; virtual double CalculateMetricLength() const; // \ru Посчитать метрическую длину \en Calculate the metric length virtual double CalculateLength( double t1, double t2 ) const; @@ -190,8 +190,8 @@ public: virtual void CalculateLocalGabarit( const MbMatrix3D &, MbCube & ) const; // \ru Рассчитать габарит относительно л.с.к. \en Calculate bounding box relative to the local coordinate system. virtual void CalculateGabarit( MbCube & ) const; // \ru Вычислить габарит кривой \en Calculate the bounding box of curve - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of curve + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of curve virtual MbCurve * GetProjection( const MbPlacement3D & place, VERSION version ) const; // \ru Дать проекцию ребра на плоскость. \en Get the edge projection onto plane. virtual size_t GetCount() const; @@ -231,7 +231,7 @@ public: \param[in] epsilon - \ru Погрешность вычисления. \en The accuracy of the calculation. \~ */ - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; /** \brief \ru Устранить разрывы производных по длине в стыках сегментов. \en Eliminate the discontinuities of the derivatives of the length of the joints of the segments. @@ -406,11 +406,11 @@ MbContour3D::MbContour3D( const CurvesVector & initSegments, bool sameCurves ) const size_t count = initSegments.size(); if ( count > 0 ) { - MbRegDuplicate * ireg = c3d_null; + MbRegDuplicate * ireg = nullptr; MbAutoRegDuplicate autoreg( ireg ); for ( size_t i = 0; i < count; ++i ) { const MbCurve3D * initSegment = initSegments[i]; - if ( initSegment != c3d_null ) { + if ( initSegment != nullptr ) { C3D_ASSERT( initSegment->GetSubstrate().Type() != st_Contour3D ); // \ru Использование контура не по назначению. \en Wrong contour use as contours container. //if ( initSegment->Type() == st_Contour3D ) { // \ru Присланный контур удаляет владелец. \en contour should be deleted by owner. // const MbContour3D * cntr = static_cast( initSegment ); @@ -418,7 +418,7 @@ MbContour3D::MbContour3D( const CurvesVector & initSegments, bool sameCurves ) // size_t cnt = contour->segments.size(); // for ( size_t j = 0; j < cnt; j++ ) { // MbCurve3D * seg = contour->segments[j]; - // if ( seg != c3d_null ) { + // if ( seg != nullptr ) { // MbCurve3D * segment = sameCurves ? seg : static_cast(&seg->Duplicate(ireg)); // segments.push_back( segment ); // segment->AddRef(); @@ -448,12 +448,12 @@ bool MbContour3D::Init( const CurvesVector & initSegments, bool sameCurves, bool if ( count > 0 ) { ::AddRefItems( initSegments ); DeleteSegments(); - MbRegDuplicate * ireg = c3d_null; + MbRegDuplicate * ireg = nullptr; MbAutoRegDuplicate autoreg( ireg ); segments.reserve( count ); for ( size_t i = 0; i < count; ++i ) { const MbCurve3D * initSegment = initSegments[i]; - if ( initSegment != c3d_null ) { + if ( initSegment != nullptr ) { C3D_ASSERT( initSegment->GetSubstrate().Type() != st_Contour3D ); // \ru Использование контура не по назначению. \en Wrong contour use as contours container. //if ( initSegment->Type() == st_Contour3D ) { // \ru Присланный контур удаляет владелец. \en contour should be deleted by owner. // const MbContour3D * cntr = static_cast( initSegment ); @@ -461,7 +461,7 @@ bool MbContour3D::Init( const CurvesVector & initSegments, bool sameCurves, bool // size_t cnt = contour->segments.size(); // for ( size_t j = 0; j < cnt; j++ ) { // MbCurve3D * seg = contour->segments[j]; - // if ( seg != c3d_null ) { + // if ( seg != nullptr ) { // MbCurve3D * segment = sameCurves ? seg : static_cast(&seg->Duplicate(ireg)); // segments.push_back( segment ); // segment->AddRef(); @@ -520,7 +520,7 @@ void MbContour3D::GetSegments( CurvesVector & curves ) const SPtr curve; for ( size_t k = 0; k < segmentsCnt; ++k ) { curve = const_cast(segments[k]); - if ( curve != c3d_null ) { + if ( curve != nullptr ) { curves.push_back( curve ); ::DetachItem( curve ); } diff --git a/C3d/Include/cur_contour_on_plane.h b/C3d/Include/cur_contour_on_plane.h index dfa9009..f0dfffd 100644 --- a/C3d/Include/cur_contour_on_plane.h +++ b/C3d/Include/cur_contour_on_plane.h @@ -63,7 +63,7 @@ public : // \ru Общие функции математического объекта. \en The common functions of the mathematical object. virtual MbeSpaceType IsA() const; // \ru Дать тип элемента. \en Get a type of the element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию элемента. \en Create a copy of the element. virtual MbContourOnSurface & CurvesDuplicate() const; // \ru Сделать копию со старой подложкой. \en Make a copy with old substrate. virtual bool IsSame( const MbSpaceItem &, double accuracy = LENGTH_EPSILON ) const; // \ru Определить, является ли копией данного объекта? \en Determine whether the object is copy of a given object. @@ -112,8 +112,8 @@ public : virtual bool IsStraight( bool ignoreParams = false ) const; // \ru Определить, является ли линия прямолинейной? \en Determine whether the line is straight. - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D *pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; // \ru Дать плоскую проекцию кривой. \en Get a planar projection of curve. + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D *pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать плоскую проекцию кривой. \en Get a planar projection of curve. virtual void GetPointsByEvenLengthDelta( size_t n, std::vector & pnts ) const; // \ru Выдать n точек кривой с равными интервалами по длине дуги. \en Get n points of curve with equal intervals along the length of the arc. @@ -129,7 +129,7 @@ public : /// \ru Заменить локальную систему координат плоскости. \en Replace the local coordinate system of a plane. void SetPlacement( const MbPlacement3D & ); /// \ru Инвертировать нормаль плоскости. \en Invert the normal of plane. - void InvertNormal( MbRegTransform * = c3d_null ); + void InvertNormal( MbRegTransform * = nullptr ); private: void operator = ( const MbContourOnPlane & ); // \ru Не реализовано !!! \en Not implemented !!! diff --git a/C3d/Include/cur_contour_on_surface.h b/C3d/Include/cur_contour_on_surface.h index 20f35d5..a458d36 100644 --- a/C3d/Include/cur_contour_on_surface.h +++ b/C3d/Include/cur_contour_on_surface.h @@ -58,8 +58,8 @@ typedef std::vector ConstContourOnSurfaceSPtrVector; class MATH_CLASS MbContourOnSurface : public MbCurve3D { protected : - MbSurface * surface; ///< \ru Указатель на базовую поверхность (всегда не c3d_null). \en The pointer to the base surface (this value is never c3d_null). - MbContour * contour; ///< \ru Указатель на 2D-контур в плоскости параметров поверхности (всегда не c3d_null). \en The pointer to 2D-contour in the plane of the surface parameters (this value is never c3d_null). + MbSurface * surface; ///< \ru Указатель на базовую поверхность (всегда не nullptr). \en The pointer to the base surface (this value is never nullptr). + MbContour * contour; ///< \ru Указатель на 2D-контур в плоскости параметров поверхности (всегда не nullptr). \en The pointer to 2D-contour in the plane of the surface parameters (this value is never nullptr). mutable double area; ///< \ru Площадь 2D-контура со знаком. \en The area of 2D-contour with sign. mutable MbCube cube; ///< \ru Габаритный куб. \en Bounding box. mutable double metricLength; ///< \ru Метрическая длина. \en The metric length. @@ -113,15 +113,15 @@ public : virtual MbeSpaceType IsA() const; // \ru Дать тип элемента. \en Get a type of the element. virtual MbeSpaceType Type() const; // \ru Дать тип элемента. \en Get a type of the element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. /// \ru Сделать копию на той же поверхности. \en Create a copy on the same surface. virtual MbContourOnSurface & CurvesDuplicate() const; virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Определить, является ли копией данного объекта? \en Determine whether the object is copy of a given object. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Определить, являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual double DistanceToPoint( const MbCartPoint3D & ) const; // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. virtual void AddYourGabaritTo( MbCube &r ) const; // \ru Добавить габарит в куб. \en Add bounding box into a cube. virtual void CalculateMesh( const MbStepData & stepData, const MbFormNote & note, MbMesh & mesh ) const; // \ru Построить полигональную копию mesh. \en Build polygonal copy mesh. @@ -154,7 +154,7 @@ public : MbCartPoint3D & pnt, MbVector3D & fir, MbVector3D * sec, MbVector3D * thir ) const; /// \ru Изменить ориентацию контура относительно поверхности. \en Change the contour orientation relative to a surface. - virtual void Inverse( MbRegTransform * iReg = c3d_null ); + virtual void Inverse( MbRegTransform * iReg = nullptr ); virtual MbNurbs3D * NurbsCurve( const MbCurveIntoNurbsInfo & ) const; // \ru Установить параметры NURBS. \en Set the NURBS parameters. @@ -190,19 +190,19 @@ public : // \ru Заполнить плейсмент, если кривая плоская. \en Fill the placement if curve is planar. virtual bool GetPlacement( MbPlacement3D & place, PlanarCheckParams params = PlanarCheckParams() ) const; - virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Вычислить ближайшую проекцию точки на кривую. \en Calculate the nearest projection of the point on the curve. + virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Вычислить ближайшую проекцию точки на кривую. \en Calculate the nearest projection of the point on the curve. virtual bool IsStraight( bool ignoreParams = false ) const; // \ru Определить, является ли линия прямолинейной. \en Determine whether the line is straight. - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; // \ru Дать плоскую проекцию кривой. \en Get a planar projection of curve. + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать плоскую проекцию кривой. \en Get a planar projection of curve. /// \ru Получить границы участков кривой, которые описываются одной аналитической функцией. /// \en Get the boundaries of the curve sections that are described by one analytical function. \~ virtual void GetAnalyticalFunctionsBounds( std::vector & params ) const; /// \ru Найти все особые точки функции кривизны кривой. /// \en Find all the special points of the curvature function of the curve. virtual void GetCurvatureSpecialPoints( std::vector & points ) const; - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? // \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. virtual bool SetContinuousDerivativeLength( VERSION version, double epsilon = EPSILON ); diff --git a/C3d/Include/cur_contour_with_breaks.h b/C3d/Include/cur_contour_with_breaks.h index 173d886..9734b0c 100644 --- a/C3d/Include/cur_contour_with_breaks.h +++ b/C3d/Include/cur_contour_with_breaks.h @@ -84,10 +84,10 @@ public : \en \name Common functions of a geometric object. \{ */ virtual MbePlaneType IsA() const; // \ru Тип элемента. \en A type of element. - virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move( const MbVector & to, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг. \en Move. - virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот. \en Rotation. - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move( const MbVector & to, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг. \en Move. + virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот. \en Rotation. + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. /** \} */ /**\ru \name Функции доступа к данным: разрывы. \en \name Functions for access to data: breaks. @@ -160,11 +160,11 @@ public : \en Invisible part by the number of break. \~ \details \ru Невидимая часть по номеру разрыва.\n Номер проверяется на корректность. - В случае, если номер не меньше числа разрывов, функция вернет c3d_null.\n + В случае, если номер не меньше числа разрывов, функция вернет nullptr.\n После использования полученный контур нужно удалить. \en Invisible part by the number of break. \n A number Is checked for correctness. - If the number is not less than the number of breaks, the function returns c3d_null. \n + If the number is not less than the number of breaks, the function returns nullptr. \n The resulting contour is to be deleted after use. \~ \param[in] i - \ru Номер разрыва, должен быть меньше количества видимых частей. \en The number of break must be less than the number of visible parts. \~ diff --git a/C3d/Include/cur_cosinusoid.h b/C3d/Include/cur_cosinusoid.h index 5c745cd..5d13ca4 100644 --- a/C3d/Include/cur_cosinusoid.h +++ b/C3d/Include/cur_cosinusoid.h @@ -90,11 +90,11 @@ public: virtual MbePlaneType IsA() const; // \ru Тип элемента \en Type of element virtual bool SetEqual ( const MbPlaneItem & ); // \ru Сделать элементы равными \en Make the elements equal virtual bool IsBounded () const { return true; } // \ru Ограниченность кривой \en Bounded curve - virtual void Transform ( const MbMatrix & matr, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector & to, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот \en Rotation + virtual void Transform ( const MbMatrix & matr, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector & to, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот \en Rotation virtual bool IsSame ( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const; - virtual MbPlaneItem & Duplicate ( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbPlaneItem & Duplicate ( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual void Refresh(); // \ru Сбросить все временные данные \en Reset all temporary data virtual void PrepareIntegralData( const bool forced ) const; // \ru Рассчитать временные (mutable) данные объекта. \en Calculate temporary (mutable) data of an object. @@ -124,7 +124,7 @@ public: virtual bool HasLength ( double & length ) const; virtual double GetMetricLength() const; // \ru Метрическая длина \en The metric length - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменение направления кривой на противоположное \en Change to the opposite direction of a curve + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменение направления кривой на противоположное \en Change to the opposite direction of a curve virtual MbNurbs * NurbsCurve( const MbCurveIntoNurbsInfo & ) const; @@ -140,7 +140,7 @@ public: virtual double PointProjection( const MbCartPoint & pnt ) const; // \ru Проекция точки на кривую \en Point projection on the curve virtual bool NearPointProjection( const MbCartPoint & pnt, double xEpsilon, double yEpsilon, - double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Point projection on the curve or its extension in the projection search area + double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Point projection on the curve or its extension in the projection search area virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -173,10 +173,10 @@ public: void Init1( CosinusoidPar & par, MbCartPoint & p1, MbCartPoint & p2, double & len, double & angle ); void Init2( CosinusoidPar & par, const MbCartPoint & p1, MbCartPoint & p2, const double & len, double & angle ); void Init3( CosinusoidPar & par, const MbCartPoint & p1, MbCartPoint & p2, double & len, const double & angle, - const DiskreteLengthData * = c3d_null ); + const DiskreteLengthData * = nullptr ); void Init4( CosinusoidPar & par, MbCartPoint & p1, const MbCartPoint & p2, const double & len, double & angle ); void Init5( CosinusoidPar & par, MbCartPoint & p1, const MbCartPoint & p2, double & len, const double & angle, - const DiskreteLengthData * = c3d_null ); + const DiskreteLengthData * = nullptr ); void Init6( CosinusoidPar & par, const MbCartPoint & p1, MbCartPoint & p2, const double & len, const double & angle ); void Init7( CosinusoidPar & par, MbCartPoint & p1, const MbCartPoint & p2, const double & len, const double & angle ); void Init8( CosinusoidPar & par, MbCartPoint & p1, MbCartPoint & p2, double & len, double & angle, diff --git a/C3d/Include/cur_crooked_spiral.h b/C3d/Include/cur_crooked_spiral.h index e45da06..4a09bc0 100644 --- a/C3d/Include/cur_crooked_spiral.h +++ b/C3d/Include/cur_crooked_spiral.h @@ -57,7 +57,7 @@ class MATH_CLASS MbCrookedSpiral : public MbSpiral { typedef std::vector CurveParams; protected: - MbCurve * curve; ///< \ru Кривая, задающая ось спирали, (не может быть c3d_null). \en The curve which determines the axis of the spiral, (can not be c3d_null). + MbCurve * curve; ///< \ru Кривая, задающая ось спирали, (не может быть nullptr). \en The curve which determines the axis of the spiral, (can not be nullptr). double radius; ///< \ru Радиус спирали. \en A spiral radius. double wMin; ///< \ru Минимальное значение параметра curve. \en Minimal value of parameter "curve". double wMax; ///< \ru Максимальное значение параметра curve. \en Maximal value of parameter "curve". @@ -84,7 +84,7 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeSpaceType IsA() const; // \ru Тип элемента \en Type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual( const MbSpaceItem & init ); // \ru Сделать равным \en Make equal @@ -108,7 +108,7 @@ public : virtual void Explore( double & t, bool ext, MbCartPoint3D & pnt, MbVector3D & fir, MbVector3D * sec, MbVector3D * thir ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual MbCurve3D * Trimmed( double t1, double t2, int sense ) const; // \ru Создание усеченной кривой \en Creation of a trimmed curve virtual double CalculateLength( double t1, double t2 ) const; diff --git a/C3d/Include/cur_cubic_spline.h b/C3d/Include/cur_cubic_spline.h index 183e803..1d91ca9 100644 --- a/C3d/Include/cur_cubic_spline.h +++ b/C3d/Include/cur_cubic_spline.h @@ -195,10 +195,10 @@ public : virtual MbePlaneType IsA () const; // \ru Тип элемента \en Type of element virtual bool SetEqual ( const MbPlaneItem & ); // \ru Сделать элементы равными \en Make equal elements virtual bool IsSame ( const MbPlaneItem &, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли кривая curve копией данной кривой \en Whether the curve "curve" is a copy of a given curve - virtual void Transform( const MbMatrix &, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbCartPoint &, const MbDirection &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот \en Rotation - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual void Transform( const MbMatrix &, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbCartPoint &, const MbDirection &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот \en Rotation + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element /** \} */ /** \ru \name Функции описания области определения кривой. @@ -246,7 +246,7 @@ public : \{ */ virtual void Rebuild (); // \ru Пересчитать Безье кривую \en Recalculate Bezier curve virtual void SetClosed( bool cls ); // \ru Установить признак замкнутости. \en Set attribute of closedness. - virtual void Inverse ( MbRegTransform * iReg = c3d_null ); // \ru Изменение направления кривой на противоположное \en Change to the opposite direction of a curve + virtual void Inverse ( MbRegTransform * iReg = nullptr ); // \ru Изменение направления кривой на противоположное \en Change to the opposite direction of a curve /** \brief \ru Построить усеченную кривую. \en Construct a trimmed curve. \~ diff --git a/C3d/Include/cur_cubic_spline3d.h b/C3d/Include/cur_cubic_spline3d.h index 6954681..c551769 100644 --- a/C3d/Include/cur_cubic_spline3d.h +++ b/C3d/Include/cur_cubic_spline3d.h @@ -247,13 +247,13 @@ public: void Init( const MbCubicSpline &, const MbPlacement3D & ); // \ru Общие функции математического объекта \en Common functions of the mathematical object - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual MbeSpaceType IsA() const; // \ru Тип элемента \en Type of element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object @@ -277,14 +277,14 @@ public: virtual MbNurbs3D * NurbsCurve( const MbCurveIntoNurbsInfo & ) const; virtual MbCurve3D * NurbsCurve( const MbNurbsParameters & ) const; - virtual void Inverse ( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse ( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual size_t GetCount() const; virtual void Rebuild (); // \ru Перестроить кривую \en Rebuild the curve virtual void SetClosed( bool cls ); // \ru Установить признак замкнутости. \en Set attribute of closedness. virtual bool IsDegenerate( double eps = METRIC_PRECISION ) const; virtual MbCurve3D * TrimmBreak( double t1, double t2, int sense ) const; // \ru Создать усеченную кривую \en Create the trimmed curve - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; virtual bool IsPlanar ( double accuracy = METRIC_EPSILON ) const; // \ru Является ли кривая плоской \en Whether a curve is planar virtual bool GetPlacement( MbPlacement3D & place, PlanarCheckParams params = PlanarCheckParams() ) const; // \ru Заполнить плейсемент, ести кривая плоская \en Fill the placement if curve is planar diff --git a/C3d/Include/cur_curve_spiral.h b/C3d/Include/cur_curve_spiral.h index 2c539f4..ec90f87 100644 --- a/C3d/Include/cur_curve_spiral.h +++ b/C3d/Include/cur_curve_spiral.h @@ -88,7 +88,7 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeSpaceType IsA() const; // \ru Тип элемента \en Type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual( const MbSpaceItem & init ); // \ru Сделать равным \en Make equal @@ -112,7 +112,7 @@ public: virtual void Explore( double & t, bool ext, MbCartPoint3D & pnt, MbVector3D & fir, MbVector3D * sec, MbVector3D * thir ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual MbCurve3D * Trimmed( double t1, double t2, int sense ) const; // \ru Создание усеченной кривой \en Creation of a trimmed curve diff --git a/C3d/Include/cur_hermit.h b/C3d/Include/cur_hermit.h index f99372f..59f2ec5 100644 --- a/C3d/Include/cur_hermit.h +++ b/C3d/Include/cur_hermit.h @@ -211,11 +211,11 @@ public : virtual MbePlaneType IsA() const; // \ru Тип элемента \en Type of element virtual bool SetEqual( const MbPlaneItem & ); // \ru Сделать элементы равными \en Make the elements equal - virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector & to, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот \en Rotation + virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector & to, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот \en Rotation virtual bool IsSame( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const; - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element /** \} */ /** \ru \name Общие функции кривой @@ -246,7 +246,7 @@ public : virtual void Explore( double & t, bool ext, MbCartPoint & pnt, MbVector & fir, MbVector * sec, MbVector * thir ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step( double t, double sag ) const; // \ru Вычисление шага аппроксимации с учетом радиуса кривизны \en Calculation of approximation step with consideration of curvature radius virtual double DeviationStep( double t, double angle ) const; // \ru Вычисление шага аппроксимации по угловой толерантности \en Calculation of approximation step by angular tolerance virtual void IntersectHorizontal( double y, SArray & ) const; // \ru Пересечение кривой с горизонтальной прямой \en Intersection of a curve with a horizontal line @@ -254,7 +254,7 @@ public : virtual double PointProjection( const MbCartPoint & pnt ) const; // \ru Проекция точки на кривую \en Point projection on the curve virtual bool NearPointProjection( const MbCartPoint & pnt, double xEpsilon, double yEpsilon, - double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Point projection on the curve or its extension in the projection search area + double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Point projection on the curve or its extension in the projection search area virtual double CalculateMetricLength() const; // \ru Посчитать метрическую длину разомкнутой \en Calculate the open metric length virtual bool GetWeightCentre( MbCartPoint & wc ) const; // \ru Посчитать центр тяжести кривой \en Calculate the gravity center of the curve virtual void CalculateGabarit( MbRect & r ) const; // \ru Определить габариты \en Calculate bounding box diff --git a/C3d/Include/cur_hermit3d.h b/C3d/Include/cur_hermit3d.h index cf7a5c5..7aba90b 100644 --- a/C3d/Include/cur_hermit3d.h +++ b/C3d/Include/cur_hermit3d.h @@ -211,12 +211,12 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeSpaceType IsA() const; // \ru Тип элемента \en Type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать \en Transform. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Поворот \en Rotation + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать \en Transform. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Поворот \en Rotation virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object @@ -236,7 +236,7 @@ public : virtual void Explore( double & t, bool ext, MbCartPoint3D & pnt, MbVector3D & fir, MbVector3D * sec, MbVector3D * thir ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step ( double t, double sag ) const; // \ru Вычисление шага аппроксимации \en Calculation of approximation step virtual double DeviationStep( double t, double angle ) const; @@ -276,7 +276,7 @@ public : virtual bool CheckParam ( double & t, ptrdiff_t & i0, ptrdiff_t & i1, double & t0, double & t1 ) const; // \ru Загнать параметр получить локальный индексы и параметры \en Move parameter into domain, get local indices and parameters virtual double GetParam( ptrdiff_t i ) const; // \ru Выдать параметр для точки с номером \en Get parameter for point with index - virtual bool NearPointProjection ( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Ближайшая проекция точки на кривую \en The nearest point projection to the curve + virtual bool NearPointProjection ( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Ближайшая проекция точки на кривую \en The nearest point projection to the curve virtual double CalculateMetricLength() const; // \ru Посчитать метрическую длину \en Calculate the metric length virtual void GetWeightCentre( MbCartPoint3D &wc ) const; // \ru Посчитать центр тяжести кривой \en Calculate the gravity center of the curve virtual void CalculateGabarit( MbCube & gab ) const; // \ru Вычислить габарит кривой \en Calculate the bounding box of curve @@ -284,8 +284,8 @@ public : VERSION version = Math::DefaultMathVersion() ) const; // \ru Сдвинуть параметр t на расстояние len по направлению \en Shift the parameter t by the distance 'len' in the direction // \ru Функции только 3D кривой \en Function for 3D-curve - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of curve + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of curve virtual size_t GetCount() const; // \ru Установить область изменения параметра. \en Set range of parameter. diff --git a/C3d/Include/cur_line.h b/C3d/Include/cur_line.h index b7e086b..ce386d4 100644 --- a/C3d/Include/cur_line.h +++ b/C3d/Include/cur_line.h @@ -71,11 +71,11 @@ public : virtual bool IsSimilar( const MbPlaneItem & ) const; // \ru Являются ли элементы подобными \en Whether the elements are similar virtual bool SetEqual ( const MbPlaneItem & ); // \ru Сделать элементы равными \en Make equal elements virtual bool IsSame ( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли кривая curve копией данной кривой ? \en Whether the 'curve' curve is duplicate of current curve. - virtual void Transform( const MbMatrix &, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот \en Rotation + virtual void Transform( const MbMatrix &, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот \en Rotation - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual void AddYourGabaritTo ( MbRect & ) const; // \ru Добавь свой габарит в прямой прям-к \en Add bounding box into a straight box virtual void AddYourGabaritMtr( MbRect &, const MbMatrix & ) const; // \ru Добавь в прям-к свой габарит с учетом матрицы \en Add bounding rectangle into a box with consideration of the matrix @@ -149,7 +149,7 @@ public : // \ru Вычисление минимальной длины кривой между двумя точками на ней \en Calculation of minimal length of a curve between two points on it virtual double LengthBetween2Points( MbCartPoint & p1, MbCartPoint & p2, - MbCartPoint * pc = c3d_null ) const; + MbCartPoint * pc = nullptr ) const; virtual bool DistanceAlong( double & t, double len, int curveDir, double eps = Math::LengthEps, VERSION version = Math::DefaultMathVersion() ) const; // \ru Сдвинуть параметр t на расстояние len по направлению \en Shift the parameter t by the distance 'len' in the direction @@ -166,7 +166,7 @@ public : virtual MbeItemLocation PointRelative ( const MbCartPoint & p, double eps = Math::LengthEps ) const; virtual double PointProjection ( const MbCartPoint & ) const; // \ru Проекция точки на кривую \en Point projection on the curve virtual bool NearPointProjection( const MbCartPoint & pnt, double xEpsilon, double yEpsilon, - double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Point projection on the curve or its extension in the projection search area + double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Point projection on the curve or its extension in the projection search area // \ru Вычисление всех перпендикуляров к кривой из данной точки \en Calculation of all perpendiculars to the curve from a given point virtual void PerpendicularPoint( const MbCartPoint & pnt, SArray & tFind ) const; @@ -186,7 +186,7 @@ public : virtual void IntersectHorizontal( double y, SArray & cross ) const; // \ru Пересечение с горизонтальной прямой \en Intersection with the horizontal line virtual void IntersectVertical ( double x, SArray & cross ) const; // \ru Пересечение с вертикальной прямой \en Intersection with the vertical line - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменение направления кривой на противоположное \en Change to the opposite direction of a curve + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменение направления кривой на противоположное \en Change to the opposite direction of a curve virtual bool IsClosed() const; // \ru Проверка замкнутости \en Check for closedness virtual bool IsBounded() const; // \ru Определить, является ли кривая ограниченной. \en Define whether the curve is bounded. virtual bool IsStraight( bool ignoreParams = false ) const; // \ru Признак прямолинейности кривой \en An attribute of curve straightness diff --git a/C3d/Include/cur_line3d.h b/C3d/Include/cur_line3d.h index 6f0b635..4de55e4 100644 --- a/C3d/Include/cur_line3d.h +++ b/C3d/Include/cur_line3d.h @@ -56,12 +56,12 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeSpaceType IsA() const; // \ru Тип элемента \en Type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать \en Transform - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать \en Transform + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual double DistanceToPoint( const MbCartPoint3D & ) const; // \ru Расстояние до точки \en Distance to a point virtual void AddYourGabaritTo( MbCube & ) const; // \ru Добавить габарит кривой в куб. \en Add a bounding box of a curve to a cube. @@ -98,7 +98,7 @@ public : virtual bool DistanceAlong( double & t, double len, int curveDir, double eps = Math::metricPrecision, VERSION version = Math::DefaultMathVersion() ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double GetMetricLength() const; // \ru Метрическая длина кривой \en Metric length of a curve virtual double Step ( double t, double sag ) const; // \ru Вычисление шага по стрелке прогиба. \en Calculation of parameter step by the sag. virtual double DeviationStep( double t, double angle ) const; // \ru Вычисление шага по углу отклонения нормали. \en Calculation of parameter step by the deviation angle. @@ -110,7 +110,7 @@ public : virtual void CalculateLocalGabarit( const MbMatrix3D & into, MbCube & ) const; // \ru Ближайшая проекция точки на кривую \en The nearest point projection to the curve - virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = c3d_null ) const; + virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = nullptr ) const; bool operator == ( const MbLine3D & with ) const; // \ru Проверка на равенство \en Check for equality bool operator != ( const MbLine3D & with ) const; // \ru Проверка на неравенство \en Check for inequality @@ -124,10 +124,10 @@ public : virtual double GetParamToUnit( double t ) const; // \ru Дать приращение параметра, соответствующее единичной длине в пространстве \en Get increment of parameter, corresponding to the unit length in space // \ru Дать плоскую проекцию кривой \en Get a planar projection of curve - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; virtual MbCurve * GetMapPsp( const MbMatrix3D &, double zNear, - MbRect1D * pRgn = c3d_null ) const; + MbRect1D * pRgn = nullptr ) const; virtual void CalculatePolygon( const MbStepData & stepData, MbPolygon3D & ) const; // \ru pассчитать полигон \en Calculate a polygon virtual bool IsSimilarToCurve( const MbCurve3D & curve, double precision = METRIC_PRECISION ) const; // \ru Подобные ли кривые для объединения (слива) \en Whether the curves for union (joining) are similar diff --git a/C3d/Include/cur_line_segment.h b/C3d/Include/cur_line_segment.h index 4d67a2d..bf21747 100644 --- a/C3d/Include/cur_line_segment.h +++ b/C3d/Include/cur_line_segment.h @@ -68,10 +68,10 @@ public : void Init1( const MbCartPoint &p1, const MbCartPoint &p2, double &len, double &angle ); void Init2( const MbCartPoint &p1, MbCartPoint &p2, const double &len, double &angle ); void Init3( const MbCartPoint &p1, MbCartPoint &p2, double &len, const double &angle, - const DiskreteLengthData * diskrData = c3d_null ); + const DiskreteLengthData * diskrData = nullptr ); void Init4( MbCartPoint &p1, const MbCartPoint &p2, const double &len, double &angle ); void Init5( MbCartPoint &p1, const MbCartPoint &p2, double &len, const double &angle, - const DiskreteLengthData * diskrData = c3d_null ); + const DiskreteLengthData * diskrData = nullptr ); void Init6( const MbCartPoint &p1, MbCartPoint &p2, const double &len, const double &angle ); void Init7( MbCartPoint &p1, const MbCartPoint &p2, const double &len, const double &angle ); void Init8( MbCartPoint &p1, MbCartPoint &p2, double &len, double &angle, @@ -86,10 +86,10 @@ public : virtual MbePlaneType IsA() const; // \ru Тип элемента \en Type of element virtual bool IsSame ( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли кривая curve копией данной кривой ? \en Whether the 'curve' curve is duplicate of current curve. virtual bool SetEqual( const MbPlaneItem & ); // \ru Сделать элементы равными \en Make equal elements - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element - virtual void Transform( const MbMatrix &, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот \en Rotation + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual void Transform( const MbMatrix &, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот \en Rotation virtual void AddYourGabaritTo ( MbRect & ) const; // \ru Добавь свой габарит в прямой прям-к \en Add bounding box into a straight box virtual void CalculateGabarit ( MbRect & ) const; // \ru Определить габариты кривой \en Determine the bounding box of the curve virtual void CalculateLocalGabarit( const MbMatrix & into, MbRect & local ) const ; // \ru Добавь в прям-к свой габарит с учетом матрицы \en Add bounding box into a box with consideration of the matrix @@ -155,7 +155,7 @@ public : \en \name Common function of curve. \{ */ virtual double Curvature( double t ) const; // \ru Кривизна усеченной кривой \en Curvature of a trimmed curve - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление кривой \en Change direction of a curve + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление кривой \en Change direction of a curve virtual MbCurve * Offset( double rad ) const; // \ru Смещение отрезка \en Shift of a line segment virtual MbCurve * Trimmed( double t1, double t2, int sense ) const; @@ -179,7 +179,7 @@ public : virtual MbeItemLocation PointRelative( const MbCartPoint & pnt, double eps = Math::LengthEps ) const; virtual double PointProjection( const MbCartPoint & pnt ) const; // \ru Проекция точки на отрезок \en Point projection on the line segment virtual bool NearPointProjection( const MbCartPoint & pnt, double xEpsilon, double yEpsilon, - double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Point projection on the curve or its extension in the projection search area + double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Point projection on the curve or its extension in the projection search area virtual void PerpendicularPoint( const MbCartPoint & pnt, SArray & tFind ) const; // \ru Вычисление всех перпендикуляров к кривой из данной точки \en Calculation of all perpendiculars to the curve from a given point virtual void IntersectHorizontal( double y, SArray & cross ) const; // \ru Пересечение с горизонтальной прямой \en Intersection with the horizontal line virtual void IntersectVertical ( double x, SArray & cross ) const; // \ru Пересечение с вертикальной прямой \en Intersection with the vertical line @@ -188,7 +188,7 @@ public : virtual double GetMetricLength() const; // \ru Метрическая длина \en The metric length virtual double GetLengthEvaluation() const; // \ru Оценка метрической длины кривой \en Evaluation of the metric length of the curve // \ru Вычисление минимальной длины кривой между двумя точками на ней \en Calculation of minimal length of a curve between two points on it - virtual double LengthBetween2Points( MbCartPoint & p1, MbCartPoint & p2, MbCartPoint * pc = c3d_null ) const; + virtual double LengthBetween2Points( MbCartPoint & p1, MbCartPoint & p2, MbCartPoint * pc = nullptr ) const; virtual bool DistanceAlong( double & t, double len, int curveDir, double eps = Math::LengthEps, VERSION version = Math::DefaultMathVersion() ) const; diff --git a/C3d/Include/cur_line_segment3d.h b/C3d/Include/cur_line_segment3d.h index 2797dc0..d1b756f 100644 --- a/C3d/Include/cur_line_segment3d.h +++ b/C3d/Include/cur_line_segment3d.h @@ -64,12 +64,12 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeSpaceType IsA() const; // \ru Тип элемента \en Type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object @@ -100,7 +100,7 @@ public : virtual MbCurve3D * NurbsCurve( const MbNurbsParameters & ) const; // \ru Построить Nurbs-копию кривой \en Construct NURBS copy of the curve virtual MbCurve3D * Trimmed( double t1, double t2, int sense ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double CalculateMetricLength() const; // \ru Метрическая длина кривой \en Metric length of a curve virtual double GetLengthEvaluation() const; virtual double CalculateLength( double t1, double t2 ) const; @@ -111,15 +111,15 @@ public : virtual void GetCentre ( MbCartPoint3D & wc ) const; // \ru Посчитать центр кривой \en Calculate a center of curve virtual void GetWeightCentre( MbCartPoint3D & wc ) const; // \ru Посчитать центр тяжести кривой \en Calculate the gravity center of the curve virtual double Curvature( double t ) const; // \ru Кривизна усеченной кривой \en Curvature of a trimmed curve - virtual bool NearPointProjection ( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Ближайшая проекция точки на кривую \en The nearest point projection to the curve + virtual bool NearPointProjection ( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Ближайшая проекция точки на кривую \en The nearest point projection to the curve virtual double Step ( double t, double sag ) const; // \ru Вычисление шага по стрелке прогиба. \en Calculation of parameter step by the sag. virtual double DeviationStep( double t, double angle ) const; // \ru Вычисление шага по углу отклонения нормали. \en Calculation of parameter step by the deviation angle. virtual double MetricStep ( double t, double length ) const; // \ru Вычисление шага параметра по длине. \en Calculation of parameter step by the given length. - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; // \ru Дать плоскую проекцию кривой. \en Get a planar projection of curve. - virtual MbCurve * GetMapPsp( const MbMatrix3D &, double zNear, MbRect1D * pRgn = c3d_null ) const; // \ru Дать перспективную плоскую проекцию кривой. \en Get a planar geometric projection of curve. + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать плоскую проекцию кривой. \en Get a planar projection of curve. + virtual MbCurve * GetMapPsp( const MbMatrix3D &, double zNear, MbRect1D * pRgn = nullptr ) const; // \ru Дать перспективную плоскую проекцию кривой. \en Get a planar geometric projection of curve. virtual bool IsStraight( bool ignoreParams = false ) const; // \ru Является ли линия прямолинейной \en Whether the line is straight virtual size_t GetCount () const; diff --git a/C3d/Include/cur_nurbs.h b/C3d/Include/cur_nurbs.h index a969103..c8e6a9d 100644 --- a/C3d/Include/cur_nurbs.h +++ b/C3d/Include/cur_nurbs.h @@ -399,7 +399,7 @@ public : uppIndex = (ptrdiff_t)initPoints.size() - 1; pointList.assign( initPoints.begin(), initPoints.end() ); - if ( initWeights != c3d_null ) { + if ( initWeights != nullptr ) { if ( (ptrdiff_t)initWeights->size() == uppIndex + 1 ) weights.assign( initWeights->begin(), initWeights->end() ); else { @@ -677,12 +677,12 @@ public : \en \name Common functions of geometric object. \{ */ virtual MbePlaneType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли кривая other копией данной кривой? \en Whether the curve is duplicate of current curve. virtual bool SetEqual( const MbPlaneItem & ); // \ru Сделать элементы равными. \en Make elements equal. - virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move( const MbVector & to, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг. \en Translation. - virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот. \en Rotation. + virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move( const MbVector & to, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг. \en Translation. + virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот. \en Rotation. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -755,7 +755,7 @@ public : virtual MbCurve * Trimmed( double t1, double t2, int sense ) const; virtual void Refresh(); // \ru Сбросить все временные данные. \en Reset all temporary data. - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменение направления кривой на противоположное. \en Set the opposite direction of curve. + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменение направления кривой на противоположное. \en Set the opposite direction of curve. // \ru Определить, является ли кривая репараметризованно такой же. \en Define whether a reparameterized curve is the same. virtual bool IsReparamSame( const MbCurve & curve, double & factor ) const; @@ -816,9 +816,9 @@ public : virtual double PointProjection( const MbCartPoint & pnt ) const; // \ru Найти проекцию точки на кривую. \en Find the point projection to the curve. virtual bool NearPointProjection( const MbCartPoint & pnt, double xEpsilon, double yEpsilon, - double & t, bool ext, MbRect1D * tRange = c3d_null ) const; + double & t, bool ext, MbRect1D * tRange = nullptr ) const; - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? // \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. virtual bool SetContinuousDerivativeLength( VERSION version, double epsilon = EPSILON ); @@ -938,7 +938,7 @@ public : void AddCurves( NurbsCurves & curves ) { for ( size_t i = 0, icount = curves.size(); i < icount; ++i ) { - if ( curves[i] != c3d_null ) + if ( curves[i] != nullptr ) AddCurve( *curves[i] ); } } @@ -1017,7 +1017,7 @@ private: // \ru Системные методы. \en System methods. // \ru Расчет весовых функций и их первых производных. \en Calculation of weight functions and its first derivatives. ptrdiff_t WeightFunctions( double & x, CcArray & ) const; // \ru Вычисление шага аппроксимации в обе стороны. \en Calculation of approximation step in both directions. - double StepD( double & t, double sag, bool checkAngle = false, double angle = 0.0, MbNurbsAuxiliaryData * cache = c3d_null ) const; + double StepD( double & t, double sag, bool checkAngle = false, double angle = 0.0, MbNurbsAuxiliaryData * cache = nullptr ) const; // \ru Вычисление шага аппроксимации сплайна второго порядка. \en Calculation of approximation step of second order spline. double PolylineStep( double t, bool half, MbNurbsAuxiliaryData * cache ) const; // \ru Уточнить проекцию \en Specify projection. @@ -1052,12 +1052,12 @@ MbNurbs::MbNurbs( size_t initDegree, bool initClosed, const PointsVector & initP closed = initClosed; degree = initDegree; // Степень В-сплайна. - if ( initWeights != c3d_null ) + if ( initWeights != nullptr ) weights.assign( initWeights->begin(), initWeights->end() ); else weights.assign( initPoints.size(), 1.0 ); - if ( initKnots != c3d_null ) { + if ( initKnots != nullptr ) { knots.assign( initKnots->begin(), initKnots->end() ); uppKnotsIndex = (ptrdiff_t)knots.size() - 1; } diff --git a/C3d/Include/cur_nurbs3d.h b/C3d/Include/cur_nurbs3d.h index 25925f0..5f719cb 100644 --- a/C3d/Include/cur_nurbs3d.h +++ b/C3d/Include/cur_nurbs3d.h @@ -127,7 +127,7 @@ protected: */ MbNurbs3D( size_t deg, bool cls, const SArray & points, - const SArray * weights = c3d_null, const SArray * knots = c3d_null ); + const SArray * weights = nullptr, const SArray * knots = nullptr ); MbNurbs3D( const MbNurbs3D & ); public : virtual ~MbNurbs3D(); @@ -171,7 +171,7 @@ public : \en Returns pointer to the created object or null pointer in case of failure. \~ */ static MbNurbs3D * Create( size_t degree, const SArray & points, bool closed, - const SArray * weights = c3d_null ); + const SArray * weights = nullptr ); /** \brief \ru Создать сплайн. \en Create spline. \~ \details \ru Создать сплайн и установить параметры сплайна.\n @@ -238,7 +238,7 @@ public : \en Returns pointer to the created object or null pointer in case of failure. \~ */ static MbNurbs3D * CreateThrough( size_t degree, bool cls, const SArray & points, - const SArray & params, SArray * aKnots = c3d_null ); + const SArray & params, SArray * aKnots = nullptr ); /** \brief \ru Создать сплайн. \en Create spline. \~ \details \ru Сплайн, проходящий через заданные точки при заданных параметрах.\n @@ -259,7 +259,7 @@ public : \en Returns pointer to the created object or null pointer in case of failure. \~ */ static MbNurbs3D * CreateThrough( size_t degree, bool cls, const c3d::SpacePointsVector & points, - const c3d::DoubleVector & params, c3d::DoubleVector * aKnots = c3d_null ); + const c3d::DoubleVector & params, c3d::DoubleVector * aKnots = nullptr ); /** \brief \ru Заполнить NURBS по данным parasolid. \en Fill NURBS by parasolid data. \~ \details \ru Заполнить NURBS по данным parasolid.\n @@ -315,7 +315,7 @@ public: \en Closedness attribute. \~ */ bool Init( size_t degree, const SArray & points, bool closed, - const SArray * weights = c3d_null ); + const SArray * weights = nullptr ); /** \brief \ru Инициализация. \en Initialization. \~ \details \ru Установить параметры сплайна.\n @@ -452,7 +452,7 @@ public: bool cls, const SArray & points, const SArray & params, - SArray * aKnots = c3d_null ); + SArray * aKnots = nullptr ); /** \brief \ru Инициализация. \en Initialization. \~ \details \ru Сплайн, проходящий через заданные точки при заданных параметрах.\n @@ -474,7 +474,7 @@ public: bool cls, const c3d::SpacePointsVector & points, const c3d::DoubleVector & params, - c3d::DoubleVector * knots = c3d_null ); + c3d::DoubleVector * knots = nullptr ); /// \ru Установить тип формы. \en Set the type of shape. void SetFormType( MbeNurbsCurveForm f ) { form = f; } @@ -482,12 +482,12 @@ public: // \ru Общие функции математического объекта. \en The common functions of the mathematical object. virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли кривая копией данной кривой? \en Whether the curve is a duplicate of the current curve. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Move. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Move. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -526,10 +526,10 @@ public: // \ru Дать плоскую кривую и плейсмент, если пространственная кривая плоская (после использования вызывать DeleteItem на двумерную кривую). \en Get a planar curve and placement, if the spatial curve is planar (after using the DeleteItem must be called for a two-dimensional curve) virtual bool GetPlaneCurve( MbCurve *& curve2d, MbPlacement3D & place, bool saveParams, PlanarCheckParams params = PlanarCheckParams() ) const; // \ru Ближайшая проекция точки на кривую. \en The nearest projection of a point onto the curve. - virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = c3d_null ) const; + virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = nullptr ) const; virtual void Refresh(); // \ru Сбросить все временные данные. \en Reset all temporary data. - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление. \en Change the direction. + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление. \en Change the direction. // \ru Определить, является ли кривая репараметризованно такой же. \en Determine whether a reparameterized curve is the same. virtual bool IsReparamSame( const MbCurve3D & curve, double & factor ) const; @@ -570,7 +570,7 @@ public: virtual double GetParam( ptrdiff_t i ) const; // \ru Выдать параметр для точки с заданным номером. \en Get parameter for a point with the given index. virtual void ResetTCalc() const; // \ru Сбросить текущее значение параметра \en Reset the current value of the parameter - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? // \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. virtual bool SetContinuousDerivativeLength( VERSION version, double epsilon = EPSILON ); @@ -672,8 +672,8 @@ public: // \ru Функции только 3D кривой. \en Functions of 3D curve only. - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; // \ru Дать плоскую проекцию кривой. \en Get a planar projection of a curve. + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать плоскую проекцию кривой. \en Get a planar projection of a curve. virtual size_t GetCount() const; // \ru Количество разбиений для прохода в операциях с поверхностями. \en Count of subdivisions for pass in operations with surfaces. @@ -877,7 +877,7 @@ private: // \ru Расчет весовых функций и их первых производных. \en Calculation of weight functions and their first derivatives. ptrdiff_t WeightFunctions ( double & x, CcArray & m ) const; /// \ru Вычисление шага аппроксимации. \en Calculation of a step of approximation. - double StepD( double t, double sag, bool checkAngle, double angle = Math::lowRenderAng, MbNurbs3DAuxiliaryData * cache = c3d_null ) const; + double StepD( double t, double sag, bool checkAngle, double angle = Math::lowRenderAng, MbNurbs3DAuxiliaryData * cache = nullptr ) const; // \ru Вычисление шага аппроксимации сплайна второго порядка. \en Calculation of approximation step of second order spline. double PolylineStep( double t, bool half, MbNurbs3DAuxiliaryData * cache ) const; // \ru Уточнить проекцию \en Specify projection. diff --git a/C3d/Include/cur_nurbs_vector.h b/C3d/Include/cur_nurbs_vector.h index fb15fd8..84f10e0 100644 --- a/C3d/Include/cur_nurbs_vector.h +++ b/C3d/Include/cur_nurbs_vector.h @@ -29,7 +29,7 @@ public: double * w; public: - MbNURBSVector2D() : x( c3d_null ), y( c3d_null ), w( c3d_null ) {} + MbNURBSVector2D() : x( nullptr ), y( nullptr ), w( nullptr ) {} ~MbNURBSVector2D(); // \ru освободить память \en free memory public: @@ -51,7 +51,7 @@ private: // // --- inline void MbNURBSVector2D::Init( ptrdiff_t i, const MbCartPoint &ip, double iw ) { - if ( w != c3d_null ) { + if ( w != nullptr ) { x[i] = ( ip.x * iw ); y[i] = ( ip.y * iw ); w[i] = iw; @@ -69,7 +69,7 @@ inline void MbNURBSVector2D::Init( ptrdiff_t i, const MbCartPoint &ip, double iw inline void MbNURBSVector2D::SetZero( ptrdiff_t i ) { x[i] = 0.0; y[i] = 0.0; - if ( w != c3d_null ) + if ( w != nullptr ) w[i] = 0.0; } @@ -80,7 +80,7 @@ inline void MbNURBSVector2D::SetZero( ptrdiff_t i ) { inline void MbNURBSVector2D::Set( ptrdiff_t i, const MbNURBSVector2D &p, ptrdiff_t ip ) { x[i] = p.x[ip]; y[i] = p.y[ip]; - if ( w != c3d_null ) + if ( w != nullptr ) w[i] = p.w[ip]; } @@ -95,7 +95,7 @@ inline void MbNURBSVector2D::Dec( ptrdiff_t i, { x[i] = ( (p2.x[ip2] - p1.x[ip1]) * kk ); y[i] = ( (p2.y[ip2] - p1.y[ip1]) * kk ); - if ( w != c3d_null ) + if ( w != nullptr ) w[i] = ( (p2.w[ip2] - p1.w[ip1]) * kk ); } @@ -107,7 +107,7 @@ inline void MbNURBSVector2D::Set( ptrdiff_t i, const MbNURBSVector2D & p, ptrdif { x[i] = ( p.x[ip] * kk ); y[i] = ( p.y[ip] * kk ); - if ( w != c3d_null ) + if ( w != nullptr ) w[i] = ( p.w[ip] * kk ); } diff --git a/C3d/Include/cur_nurbs_vector3d.h b/C3d/Include/cur_nurbs_vector3d.h index 2a2c85f..cbc1ca0 100644 --- a/C3d/Include/cur_nurbs_vector3d.h +++ b/C3d/Include/cur_nurbs_vector3d.h @@ -212,7 +212,7 @@ inline void MbNURBSVector::Set( ptrdiff_t i, const MbNURBSVector & p, ptrdiff_t inline void MbNURBSVector::Set( ptrdiff_t i, const DoubleTriple * t, double * ww, ptrdiff_t ip ) { _vec[i].Init( t[ip].x , t[ip].y , t[ip].z ); - if ( useWeights && ww != c3d_null ) + if ( useWeights && ww != nullptr ) w(i) = ww[ip]; } diff --git a/C3d/Include/cur_offset_curve.h b/C3d/Include/cur_offset_curve.h index 7ef7470..690a2e6 100644 --- a/C3d/Include/cur_offset_curve.h +++ b/C3d/Include/cur_offset_curve.h @@ -40,7 +40,7 @@ class MbRegTransform; // --- class MATH_CLASS MbOffsetCurve : public MbCurve { protected : - MbCurve * basisCurve; ///< \ru Базовая кривая (всегда не c3d_null) \en Base curve (always not c3d_null). + MbCurve * basisCurve; ///< \ru Базовая кривая (всегда не nullptr) \en Base curve (always not nullptr). double tmin; ///< \ru Начальный параметр basisCurve. \en Start parameter of basisCurve. double tmax; ///< \ru Конечный параметр basisCurve. \en End parameter of basisCurve. bool closed; ///< \ru Замкнутость basisCurve. \en Closedness of basisCurve. @@ -102,10 +102,10 @@ public : virtual MbePlaneType IsA() const; // \ru Тип элемента \en Type of element virtual bool IsSimilar ( const MbPlaneItem & ) const; // \ru Являются ли элементы подобными \en Whether the elements are similar virtual bool SetEqual( const MbPlaneItem & ); // \ru Сделать элементы равными \en Make equal elements - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element - virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector & to, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот \en Rotation + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector & to, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот \en Rotation virtual bool IsSame( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли кривая curve копией данной кривой ? \en Whether the 'curve' curve is duplicate of current curve. virtual void AddYourGabaritTo( MbRect & ) const; // \ru Добавь свой габарит в прямой прям-к \en Add bounding box into a straight box @@ -192,7 +192,7 @@ public : \{ */ virtual bool IsStraight( bool ignoreParams = false ) const; // \ru Является ли линия прямолинейной \en Whether the line is straight virtual MbCurve * Offset( double rad ) const; // \ru Смещение смещенной кривой \en Offset of the offset curve - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменение направления кривой на противоположное \en Change to the opposite direction of a curve + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменение направления кривой на противоположное \en Change to the opposite direction of a curve virtual void Refresh(); // \ru Сбросить все временные данные \en Reset all temporary data virtual void PrepareIntegralData( const bool forced ) const; // \ru Рассчитать временные (mutable) данные объекта. \en Calculate temporary (mutable) data of an object. @@ -237,7 +237,7 @@ public : virtual void GetBasisPoints( MbControlData & ) const; // \ru Выдать контрольные точки объекта. \en Get control points of object. virtual void SetBasisPoints( const MbControlData & ); // \ru Изменить объект по контрольным точкам. \en Change the object by control points. - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? // \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. virtual bool SetContinuousDerivativeLength( VERSION version, double epsilon = EPSILON ); diff --git a/C3d/Include/cur_offset_curve3d.h b/C3d/Include/cur_offset_curve3d.h index 0a7938e..18a36a3 100644 --- a/C3d/Include/cur_offset_curve3d.h +++ b/C3d/Include/cur_offset_curve3d.h @@ -130,7 +130,7 @@ public: // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeSpaceType IsA() const; // \ru Тип элемента \en Type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar @@ -174,7 +174,7 @@ public: virtual const MbCurve3D & GetBasisCurve() const; virtual MbCurve3D & SetBasisCurve(); //virtual MbCurve3D * Trimmed( double t1, double t2, int sense ) const; // \ru Создание усеченной кривой \en Creation of a trimmed curve - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual size_t GetCount() const; virtual void ChangeCarrier( const MbSpaceItem & item, MbSpaceItem & init ); // \ru Изменение носителя \en Changing of carrier @@ -183,7 +183,7 @@ public: virtual bool GetPlacement( MbPlacement3D & place, PlanarCheckParams params = PlanarCheckParams() ) const; // \ru Заполнить плейсемент, ести кривая плоская \en Fill the placement if curve is planar - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? // \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. virtual bool SetContinuousDerivativeLength( VERSION version, double epsilon = EPSILON ); diff --git a/C3d/Include/cur_plane_curve.h b/C3d/Include/cur_plane_curve.h index 8e72100..8321413 100644 --- a/C3d/Include/cur_plane_curve.h +++ b/C3d/Include/cur_plane_curve.h @@ -37,7 +37,7 @@ class MATH_CLASS MbContour; class MATH_CLASS MbPlaneCurve : public MbCurve3D { protected : MbPlacement3D position; ///< \ru Локальная система координат, в плоскости XY которой расположена кривая. \en The local coordinate system in XY plane of which the curve is located. - MbCurve * curve; ///< \ru Двумерная кривая (не может быть c3d_null). \en A two-dimensional uv-curve (can not be c3d_null). + MbCurve * curve; ///< \ru Двумерная кривая (не может быть nullptr). \en A two-dimensional uv-curve (can not be nullptr). mutable MbCube cube; ///< \ru Габаритный куб. \en Bounding box. @@ -58,13 +58,13 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeSpaceType IsA() const; // \ru Тип элемента \en Type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли объект копией \en Whether the object is a copy virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать \en Transform. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать \en Transform. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual double DistanceToPoint( const MbCartPoint3D & ) const; // \ru Расстояние до точки \en Distance to a point virtual void PrepareIntegralData( const bool forced ) const; // \ru Рассчитать временные (mutable) данные объекта. \en Calculate temporary (mutable) data of an object. @@ -104,8 +104,8 @@ public : virtual MbCurve3D * Trimmed( double t1, double t2, int sense ) const; // \ru Создание усеченной кривой \en Creation of a trimmed curve - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction - virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Ближайшая проекция точки на кривую \en The nearest point projection to the curve + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction + virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Ближайшая проекция точки на кривую \en The nearest point projection to the curve virtual double Curvature( double ) const; // \ru Кривизна кривой \en Curvature of the curve virtual double Step ( double t, double sag ) const; // \ru Вычисление шага по стрелке прогиба. \en Calculation of parameter step by the sag. virtual double DeviationStep( double t, double angle ) const; // \ru Вычисление шага по углу отклонения нормали. \en Calculation of parameter step by the deviation angle. @@ -127,10 +127,10 @@ public : // \ru Ближайшая точка кривой к плейсменту \en The nearest point of a curve by the placement virtual double DistanceToPlace( const MbPlacement3D & place, double & t0, double & angle ) const; - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of curve + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of curve virtual MbCurve * GetMapPsp( const MbMatrix3D &, double zNear, - MbRect1D * pRgn = c3d_null ) const; + MbRect1D * pRgn = nullptr ) const; virtual double GetRadius() const; // \ru Дать физический радиус объекта или ноль, если это невозможно. \en Get the physical radius of the object or null if it impossible. virtual bool GetCircleAxis ( MbAxis3D & ) const; // \ru Дать ось кривой \en Get the curve axis @@ -167,7 +167,7 @@ public : virtual bool IsShift( const MbSpaceItem &, MbVector3D &, bool & isSame, double accuracy = LENGTH_EPSILON ) const; virtual bool IsSimilarToCurve( const MbCurve3D & curve, double precision = METRIC_PRECISION ) const; // \ru Подобные ли кривые для объединения (слива) \en Whether the curves are similar for merge (joining) - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? // \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. virtual bool SetContinuousDerivativeLength( VERSION version, double epsilon = EPSILON ); diff --git a/C3d/Include/cur_point_curve.h b/C3d/Include/cur_point_curve.h index 44908b9..88a52aa 100644 --- a/C3d/Include/cur_point_curve.h +++ b/C3d/Include/cur_point_curve.h @@ -65,10 +65,10 @@ public : virtual MbePlaneType IsA() const; // \ru Тип элемента \en Type of element virtual bool SetEqual( const MbPlaneItem & ); // \ru Сделать элементы равными \en Make equal elements - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; - virtual void Move ( const MbVector &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); - virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот \en Rotation - virtual void Transform( const MbMatrix &, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; + virtual void Move ( const MbVector &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); + virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот \en Rotation + virtual void Transform( const MbMatrix &, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); virtual void AddYourGabaritTo ( MbRect & ) const; // \ru Добавь свой габарит в прямой прям-к \en Add bounding box into a straight box virtual void CalculateLocalGabarit( const MbMatrix & into, MbRect & local ) const; // \ru Добавь в прям-к свой габарит с учетом матрицы \en Add bounding box into a box with consideration of the matrix virtual double DistanceToPoint( const MbCartPoint & to ) const; // \ru Расстояние до точки \en Distance to a point @@ -131,7 +131,7 @@ public : \en \name Common function of curve \{ */ virtual double Curvature( double t ) const; // \ru Кривизна усеченной кривой \en Curvature of a trimmed curve - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление кривой \en Change direction of a curve + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление кривой \en Change direction of a curve virtual bool IsDegenerate( double eps = Math::LengthEps ) const; // \ru Проверка вырожденности \en Check for degeneracy virtual bool HasLength( double & length ) const; @@ -154,7 +154,7 @@ public : virtual MbeItemLocation PointRelative( const MbCartPoint & pnt, double eps = Math::LengthEps ) const; virtual double PointProjection( const MbCartPoint & pnt ) const; // \ru Проекция точки на отрезок \en Point projection on the line segment virtual bool NearPointProjection( const MbCartPoint & pnt, double xEpsilon, double yEpsilon, - double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Point projection on the curve or its extension in the projection search area + double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Point projection on the curve or its extension in the projection search area virtual void IntersectHorizontal( double y, SArray & cross ) const; // \ru Пересечение с горизонтальной прямой \en Intersection with the horizontal line virtual void IntersectVertical ( double x, SArray & cross ) const; // \ru Пересечение с вертикальной прямой \en Intersection with the vertical line diff --git a/C3d/Include/cur_polycurve.h b/C3d/Include/cur_polycurve.h index 079524b..45e3e4b 100644 --- a/C3d/Include/cur_polycurve.h +++ b/C3d/Include/cur_polycurve.h @@ -54,10 +54,10 @@ public : virtual MbePlaneType Type() const; // \ru Тип элемента \en Type of element virtual bool SetEqual( const MbPlaneItem & ) = 0; // \ru Сделать элементы равными \en Make the elements equal virtual bool IsSame( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const = 0; // \ru Является ли кривая curve копией данной кривой ? \en Whether curve 'curve' is a duplicate of the current curve. - virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ) = 0; // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector & to, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ) = 0; // \ru Сдвиг \en Translation - virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ) = 0; // \ru Поворот \en Rotation - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Сделать копию элемента \en Create a copy of the element + virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ) = 0; // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector & to, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ) = 0; // \ru Сдвиг \en Translation + virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ) = 0; // \ru Поворот \en Rotation + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Сделать копию элемента \en Create a copy of the element virtual void AddYourGabaritTo( MbRect & r ) const; // \ru Добавь свой габарит в прямой прям-к \en Add your own gabarit into the given bounding rectangle virtual void Refresh(); // \ru Сбросить все временные данные \en Reset all temporary data virtual void PrepareIntegralData( const bool forced ) const; // \ru Рассчитать временные (mutable) данные объекта. \en Calculate temporary (mutable) data of an object. @@ -94,7 +94,7 @@ public : virtual bool IsStraight( bool ignoreParams = false ) const; // \ru Признак прямолинейности кривой \en An attribute of curve straightness. virtual bool HasLength( double & length ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ) = 0; // \ru Изменение направления кривой на противоположное \en Change curve direction to the opposite one + virtual void Inverse( MbRegTransform * iReg = nullptr ) = 0; // \ru Изменение направления кривой на противоположное \en Change curve direction to the opposite one virtual MbeState Deformation( const MbRect &, const MbMatrix & ); // \ru Деформация \en Deformation virtual bool IsInRectForDeform( const MbRect & r ) const; // \ru Виден ли объект в заданном прямоугольнике для деформации \en Whether the object is visible in the given rectangle for deformation diff --git a/C3d/Include/cur_polycurve3d.h b/C3d/Include/cur_polycurve3d.h index 99d259a..0189cf2 100644 --- a/C3d/Include/cur_polycurve3d.h +++ b/C3d/Include/cur_polycurve3d.h @@ -47,12 +47,12 @@ public : virtual MbeSpaceType IsA() const = 0; // \ru Тип элемента \en Type of element virtual MbeSpaceType Type() const; // \ru Тип элемента \en Type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const = 0; virtual bool SetEqual ( const MbSpaceItem & ) = 0; // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ) = 0; // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ) = 0; // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ) = 0; // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ) = 0; // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ) = 0; // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ) = 0; // \ru Повернуть вокруг оси \en Rotate about an axis virtual void AddYourGabaritTo( MbCube & ) const; // \ru Добавь свой габарит в куб \en Add your own bounding box into the cube virtual void PrepareIntegralData( const bool forced ) const; // \ru Рассчитать временные (mutable) данные объекта. \en Calculate temporary (mutable) data of an object. @@ -82,7 +82,7 @@ public : virtual double GetTMax() const = 0; // \ru Вернуть максимальное значение параметра \en Get the maximum value of parameter virtual double GetTMin() const = 0; // \ru Вернуть минимальное значение параметра \en Get the minimum value of parameter virtual bool IsClosed() const; // \ru Замкнутость кривой \en A curve closedness - virtual void Inverse( MbRegTransform * iReg = c3d_null ) = 0; // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ) = 0; // \ru Изменить направление \en Change direction virtual double GetMetricLength() const; // \ru Выдать метрическую длину ограниченной кривой \en Get metric length of bounded curve virtual double GetLengthEvaluation() const; // \ru Оценка метрической длины кривой \en Estimation of metric length of the curve diff --git a/C3d/Include/cur_polyline.h b/C3d/Include/cur_polyline.h index 9087c8c..566aa2c 100644 --- a/C3d/Include/cur_polyline.h +++ b/C3d/Include/cur_polyline.h @@ -51,7 +51,7 @@ public : MbPolyline( const MbCartPoint & p1, const MbCartPoint & p2 ) : MbPolyCurve() , segmentsCount( 1 ) - , searchTree( c3d_null ) + , searchTree( nullptr ) { pointList.reserve( 2 ); pointList.push_back( p1 ); @@ -64,7 +64,7 @@ public : MbPolyline( const Points & initList, bool cls ) : MbPolyCurve() , segmentsCount( UNDEFINED_INT_T ) - , searchTree( c3d_null ) + , searchTree( nullptr ) { Init( initList, cls ); } @@ -87,10 +87,10 @@ public : virtual MbePlaneType IsA() const; // \ru Тип элемента \en Type of element virtual bool SetEqual( const MbPlaneItem & ); // \ru Сделать элементы равными \en Make the elements equal virtual bool IsSame( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли кривая curve копией данной кривой ? \en Whether curve 'curve' is a duplicate of the current curve. - virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector & to, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот \en Rotation - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual void Transform( const MbMatrix & matr, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector & to, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот \en Rotation + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual void Refresh(); // \ru Сбросить все временные данные \en Reset all temporary data /** \} */ @@ -189,7 +189,7 @@ public : virtual bool IsStraight( bool ignoreParams = false ) const; // \ru Признак прямолинейности кривой \en An attribute of curve straightness. - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменение направления кривой на противоположное \en Change curve direction to the opposite one + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменение направления кривой на противоположное \en Change curve direction to the opposite one virtual double CalculateMetricLength() const; // \ru Посчитать метрическую длину \en Calculate the metric length virtual double GetLengthEvaluation() const; // \ru Оценка метрической длины кривой \en Estimation of metric length of the curve @@ -253,7 +253,7 @@ public : virtual bool IsDegenerate( double eps = Math::LengthEps ) const; // \ru Проверка вырожденности кривой \en Check for curve degeneracy virtual bool IsSmoothConnected( double angleEps ) const; // \ru Являются ли стыки контура\кривой гладкими? \en Whether the joints of a contour\curve are smooth. - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? // \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. virtual bool SetContinuousDerivativeLength( VERSION version, double epsilon = EPSILON ); diff --git a/C3d/Include/cur_polyline3d.h b/C3d/Include/cur_polyline3d.h index 3e26839..6b3b9b6 100644 --- a/C3d/Include/cur_polyline3d.h +++ b/C3d/Include/cur_polyline3d.h @@ -99,12 +99,12 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeSpaceType IsA() const; // \ru Тип элемента \en Type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать \en Transform - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать \en Transform + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual double DistanceToPoint( const MbCartPoint3D & ) const;// \ru Расстояние до точки \en Distance to a point virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object @@ -130,7 +130,7 @@ public : virtual double GetTMin() const; // \ru Вернуть минимальное значение параметра \en Get the minimum value of the parameter virtual double GetTMax() const; // \ru Вернуть максимальное значение параметра \en Get the maximum value of parameter - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step ( double t, double sag ) const; // \ru Шаг параметра с учетом радиуса кривизны \en Step of parameter with consideration of curvature virtual double DeviationStep( double t, double angle ) const; // \ru Шаг параметра по заданному углу отклонения касательной \en Step of parameter by a given angle of deviation of tangent @@ -152,7 +152,7 @@ public : virtual void GetRuleInterval( ptrdiff_t index, double & t1, double & t2 ) const; // \ru Выдать интервал влияния точки кривой \en Get the interval of point influence // \ru Функции только 3D кривой \en Functions of 3D curve only - virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Ближайшая проекция точки на кривую \en The nearest point projection to the curve + virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Ближайшая проекция точки на кривую \en The nearest point projection to the curve virtual void InsertPoint( ptrdiff_t index, const MbCartPoint3D & ); // \ru Добавить точку \en Add a point virtual void InsertPoint( double t, const MbCartPoint3D &, double ); // \ru Добавить точку \en Add a point virtual bool CheckParam ( double & t, ptrdiff_t & i0, ptrdiff_t & i1, double & t0, double & t1 ) const; // \ru Установить параметр \en Set parameter @@ -162,14 +162,14 @@ public : //virtual bool GoThroughPoint( double t, MbCartPoint3D & p ); // \ru Пройти через точку \en Pass through point - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; // \ru Дать плоскую проекцию кривой. \en Get a planar projection of a curve. - virtual MbCurve * GetMapPsp( const MbMatrix3D &, double zNear, MbRect1D * pRgn = c3d_null ) const; // \ru Дать перспективную плоскую проекцию кривой. \en Get a planar geometric projection of a curve. + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать плоскую проекцию кривой. \en Get a planar projection of a curve. + virtual MbCurve * GetMapPsp( const MbMatrix3D &, double zNear, MbRect1D * pRgn = nullptr ) const; // \ru Дать перспективную плоскую проекцию кривой. \en Get a planar geometric projection of a curve. virtual size_t GetCount() const; virtual bool IsSmoothConnected( double angleEps ) const; // \ru Являются ли стыки контура\кривой гладкими? \en Whether the joints of a contour\curve are smooth. - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? // \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. virtual bool SetContinuousDerivativeLength( VERSION version, double epsilon = EPSILON ); diff --git a/C3d/Include/cur_projection_curve.h b/C3d/Include/cur_projection_curve.h index afba50a..2f54303 100644 --- a/C3d/Include/cur_projection_curve.h +++ b/C3d/Include/cur_projection_curve.h @@ -43,9 +43,9 @@ class MbCurveIntoNurbsInfo; // --- class MATH_CLASS MbProjCurve : public MbCurve { private : - MbCurve3D * spaceCurve; ///< \ru Пространственная кривая (всегда не c3d_null). \en Spatial curve (always not c3d_null). - MbSurface * surface; ///< \ru Поверхность (всегда не c3d_null). \en Surface (always not c3d_null). - MbCurve * curve; ///< \ru Проекция пространственной кривой на поверхность (служит начальным приближением), всегда не c3d_null. \en Projection of a spatial curve onto a surface (is used as initial approximation), always not c3d_null. + MbCurve3D * spaceCurve; ///< \ru Пространственная кривая (всегда не nullptr). \en Spatial curve (always not nullptr). + MbSurface * surface; ///< \ru Поверхность (всегда не nullptr). \en Surface (always not nullptr). + MbCurve * curve; ///< \ru Проекция пространственной кривой на поверхность (служит начальным приближением), всегда не nullptr. \en Projection of a spatial curve onto a surface (is used as initial approximation), always not nullptr. MbMatrix3D * into; ///< \ru Матрица пересчета в систему координат плоскости. Для случая плоской поверхности surface. Вычисляется заново при изменении поверхности. \en A matrix of transformation to the plane coordinate system. In case of planar surface 'surface'. Recalculated at surface change. bool belong; ///< \ru Проецируемая кривая лежит на поверхности. \en Projecting curve lies on the surface. @@ -117,7 +117,7 @@ public : MbProjCurve( const MbCurve3D & sCurve, bool sameSpaceCurve, const MbSurface & surface, const MbCurve & pCurve, bool samePlaneCurve, - MbRegDuplicate * iReg = c3d_null ); + MbRegDuplicate * iReg = nullptr ); private: MbProjCurve( const MbProjCurve &, MbRegDuplicate * ireg ); @@ -136,13 +136,13 @@ public : virtual bool IsSimilar ( const MbPlaneItem & ) const; // \ru Являются ли элементы подобными \en Whether the elements are similar virtual bool SetEqual ( const MbPlaneItem & ); // \ru Сделать элементы равными \en Make the elements equal virtual bool IsSame( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли кривая curve копией данной кривой ? \en Whether curve 'curve' is a duplicate of the current curve. - virtual void Transform( const MbMatrix &, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Transform( const MbMatrix3D &, MbRegTransform * ireg = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis - virtual void Move ( const MbVector &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот \en Rotation - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual void Transform( const MbMatrix &, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Transform( const MbMatrix3D &, MbRegTransform * ireg = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Move ( const MbVector &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот \en Rotation + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual void Refresh(); // \ru Сбросить все временные данные \en Reset all temporary data virtual void PrepareIntegralData( const bool forced ) const; // \ru Рассчитать временные (mutable) данные объекта. \en Calculate temporary (mutable) data of an object. @@ -204,7 +204,7 @@ public : \{ */ virtual double PointProjection( const MbCartPoint & pnt ) const; // \ru Проекция точки на кривую. \en Point projection on the curve. virtual bool NearPointProjection( const MbCartPoint & pnt, double xEpsilon, double yEpsilon, - double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции. \en Projection of a point onto the curve or its extension in the projection region. + double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции. \en Projection of a point onto the curve or its extension in the projection region. virtual bool HasLength( double & ) const; // \ru Метрическая длина кривой. \en Metric length of a curve. virtual double GetMetricLength() const; // \ru Метрическая длина кривой. \en Metric length of a curve. @@ -216,7 +216,7 @@ public : virtual bool GetMiddlePoint( MbCartPoint & ) const; // \ru Вычислить среднюю точку кривой. \en Calculate mid-point of curve. - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменение направления кривой на противоположное \en Change curve direction to the opposite one + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменение направления кривой на противоположное \en Change curve direction to the opposite one virtual MbNurbs * NurbsCurve( const MbCurveIntoNurbsInfo & ) const; @@ -242,12 +242,12 @@ public : bool IsBelong() const { return belong; } ///< \ru Лежит ли проецируемая кривая на поверхности. \en Whether the projecting curve lies on the surface. - bool InvertNormal( MbRegTransform * = c3d_null ); ///< \ru Инвертировать нормаль, если поверхность - плоскость. \en Invert normal if the surface is a plane. + bool InvertNormal( MbRegTransform * = nullptr ); ///< \ru Инвертировать нормаль, если поверхность - плоскость. \en Invert normal if the surface is a plane. bool ChangeCarrierBorne( const MbSurface & item, MbSurface & init, const MbMatrix & matr ); ///< \ru Изменение носителя. \en Change a carrier. /// \ru Получить 2d сплайн с данной относительной точностью аппроксимирующий данную кривую. \en Get 2d spline which approximates given curve with a given relative tolerance. - MbCurve * CreateSpline( double relEps, MbRect1D * pRgn = c3d_null ) const; + MbCurve * CreateSpline( double relEps, MbRect1D * pRgn = nullptr ) const; /// \ru Создать кривую путём сращивания части данной кривой с частью другой кривой. \en Create a curve by joining a part of this curve with a part of other curve. MbProjCurve * AddCurve( const MbProjCurve &, double accuracy, VERSION version = Math::DefaultMathVersion() ) const; diff --git a/C3d/Include/cur_reparam_curve.h b/C3d/Include/cur_reparam_curve.h index eebdb6a..07e8026 100644 --- a/C3d/Include/cur_reparam_curve.h +++ b/C3d/Include/cur_reparam_curve.h @@ -45,6 +45,7 @@ class MATH_CLASS MbReparamCurve : public MbCurve { rt_Quadratic, ///< \ru Квадратичная репараметризация. \en Quadratic reparametrization. rt_ScaledEndDers, ///< \ru Репараметризация с заданными масштабами производной на концах. \en Reparametrization with a given scale of the derivative at the ends. rt_Proportional, ///< \ru Пропорциональная длине кривой репараметризация. \en The poportional to the length of the curve parametrization. + rt_User ///< \ru Функция, заданная пользователем. \en User defined function. }; protected : @@ -59,8 +60,6 @@ public : MbReparamCurve( const MbCurve &, const double t1, const double t2, const double begFirstDerValue ); /// \ru Конструктор по кривой и производным параметра на ее концах. \en Constructor for the curve and derivatives of the parameter at its ends MbReparamCurve( double dt1, double dt2, const MbCurve & curve ); - /// \ru Конструктор кривой с пропорциональной параметризацией. \en The constructor with the poportional to the length parametrization. - MbReparamCurve( double t1, double t2, MbCurve & curve, bool proportional ); protected: MbReparamCurve( const MbReparamCurve &, MbRegDuplicate * ); private : @@ -79,6 +78,12 @@ public : void InitScaledEnds( double scaleDer1, double scaleDer2 ); /// \ru Установить параметрическую область кривой пропорциональную метрической длине кривой. \en Set the parametric area of the curve proportional to the metric length of the curve. bool InitProportional( double t1, double t2 ); + /// \ru Установить пользовательскую функцию репараметризации. \en Set users reparameterization function. + bool InitByUsersFunction( MbFunction & repFunc ); + /// \ru Установить параметрическую область кривой пропорциональную метрической длине кривой. \en Set the parametric area of the curve proportional to the metric length of the curve. + static MbReparamCurve * CreateProportional( const MbCurve & curve, double t1, double t2 ); + /// \ru Установить пользовательскую функцию репараметризации. \en Set users reparameterization function. + static MbReparamCurve * CreateByFunction( const MbCurve & curve, MbFunction & repFunc ); /** \ru \name Общие функции геометрического объекта. \en \name Common functions of a geometric object. @@ -87,12 +92,12 @@ public : virtual MbePlaneType IsA() const; // \ru Тип элемента \en Type of element virtual bool IsSimilar( const MbPlaneItem & ) const; // \ru Являются ли элементы подобными \en Whether the elements are similar virtual bool SetEqual ( const MbPlaneItem & ); // \ru Сделать элементы равными \en Make the elements equal - virtual void Transform( const MbMatrix &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbCartPoint &, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот \en Rotation + virtual void Transform( const MbMatrix &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbCartPoint &, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот \en Rotation virtual bool IsSame( const MbPlaneItem &, double accuracy = LENGTH_EPSILON ) const; virtual MbCurve * Offset( double rad ) const; // \ru Смещение усеченной кривой \en Shift of a trimmed curve - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; virtual MbCurve * Trimmed( double t1, double t2, int sense ) const; virtual MbContour * NurbsContour() const; // \ru Построить контур \en Create a contour virtual void AddYourGabaritTo( MbRect & ) const; // \ru Добавь свой габарит в прямой прям-к \en Add your own gabarit into the given bounding rectangle @@ -160,7 +165,7 @@ public : /** \ru \name Общие функции кривой \en \name Common functions of curve \{ */ - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменение направления кривой на противоположное \en Change curve direction to the opposite one + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменение направления кривой на противоположное \en Change curve direction to the opposite one virtual double DistanceToPoint( const MbCartPoint & toP ) const; // \ru Расстояние до точки \en Distance to a point virtual bool DistanceToPointIfLess( const MbCartPoint & toP, double & d ) const; // \ru Расстояние до точки, если оно меньше d \en Distance to a point if it is less than 'd' virtual MbeState Deformation( const MbRect &, const MbMatrix & ); // \ru Деформация \en Deformation @@ -195,7 +200,7 @@ public : virtual double PointProjection( const MbCartPoint & ) const; // \ru Проекция точки на кривую \en Point projection on the curve virtual bool NearPointProjection( const MbCartPoint & pnt, double xEpsilon, double yEpsilon, - double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Projection of a point onto the curve or its extension in the projection region + double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Проекция точки на кривую или её продолжение в области поиска проекции \en Projection of a point onto the curve or its extension in the projection region // \ru Вычисление всех перпендикуляров к кривой из данной точки \en Calculation of all the perpendiculars to the curve from a given point virtual void PerpendicularPoint( const MbCartPoint & pnt, SArray & tFind ) const; virtual bool SmallestPerpendicular( const MbCartPoint & pnt, double & tProj ) const; // \ru Нахождение ближайшего перпендикуляра к кривой из данной точки \en Calculation of the closest perpendicular to the curve from the given point @@ -209,7 +214,7 @@ public : virtual bool GetMiddlePoint( MbCartPoint & ) const; // \ru Выдать среднюю точку кривой \en Get mid-point of a curve virtual bool GoThroughPoint( MbCartPoint & p0 ); // \ru Вычисление минимальной длины кривой между двумя точками на ней \en Calculate the minimal curve length between two points on it - virtual double LengthBetween2Points( MbCartPoint & p1, MbCartPoint & p2, MbCartPoint * pc = c3d_null ) const; + virtual double LengthBetween2Points( MbCartPoint & p1, MbCartPoint & p2, MbCartPoint * pc = nullptr ) const; virtual bool GetSpecificPoint( const MbCartPoint & from, double & dmax, MbCartPoint & pnt ) const; // \ru Выдать характерную точку кривой если она ближе чем dmax \en Get control point of curve if it is closer than 'dmax' virtual bool GetWeightCentre( MbCartPoint & c ) const; // \ru Выдать центр тяжести кривой \en Get the center of gravity of the curve virtual bool GetCentre( MbCartPoint & c ) const; // \ru Выдать центр кривой \en Get center of curve @@ -234,7 +239,7 @@ public : virtual const MbCurve & GetBasisCurve() const; virtual MbCurve & SetBasisCurve(); - bool SetBasisCurve( const MbCurve &, const MbRect1D * tRange = c3d_null ); ///< \ru Заменить плоскую кривую \en Replace the planar curve + bool SetBasisCurve( const MbCurve &, const MbRect1D * tRange = nullptr ); ///< \ru Заменить плоскую кривую \en Replace the planar curve double Tmin() const; ///< \ru Начальный параметр. \en Start parameter. double Tmax() const; ///< \ru Конечный параметр. \en End parameter. double Dt() const; ///< \ru Производная параметра кривой basisCurve по параметру. \en Derivative of parameter of 'basisCurve' curve by parameter. @@ -256,7 +261,7 @@ public : virtual void GetBasisPoints( MbControlData & ) const; // \ru Выдать контрольные точки объекта. \en Get control points of object. virtual void SetBasisPoints( const MbControlData & ); // \ru Изменить объект по контрольным точкам. \en Change the object by control points. - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? // \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. virtual bool SetContinuousDerivativeLength( VERSION version, double epsilon = EPSILON ); diff --git a/C3d/Include/cur_reparam_curve3d.h b/C3d/Include/cur_reparam_curve3d.h index e4f02d9..c982e9a 100644 --- a/C3d/Include/cur_reparam_curve3d.h +++ b/C3d/Include/cur_reparam_curve3d.h @@ -45,6 +45,7 @@ class MATH_CLASS MbReparamCurve3D : public MbCurve3D { rt_Quadratic, ///< \ru Квадратичная репараметризация. \en Quadratic reparametrization. rt_ScaledEndDers, ///< \ru Репараметризация с заданными масштабами производной на концах. \en Reparametrization with a given scale of the derivative at the ends. rt_Proportional, ///< \ru Пропорциональная длине кривой репараметризация. \en The poportional to the length of the curve parametrization. + rt_User ///< \ru Функция, заданная пользователем. \en User defined function. }; protected: @@ -58,8 +59,6 @@ public : MbReparamCurve3D( const MbCurve3D &, double t1, double t2, double begFirstDerValue ); /// \ru Конструктор по кривой и производным параметра на ее концах. \en Constructor for the curve and derivatives of the parameter at its ends MbReparamCurve3D( double dt1, double dt2, const MbCurve3D & curve ); - /// \ru Конструктор кривой с пропорциональной параметризацией. \en The constructor with the poportional to the length parametrization. - MbReparamCurve3D( double t1, double t2, MbCurve3D & curve, bool proportional ); protected: MbReparamCurve3D( const MbReparamCurve3D &, MbRegDuplicate * ); private : @@ -78,17 +77,23 @@ public : void InitScaledEnds( double scaleDer1, double scaleDer2 ); /// \ru Установить параметрическую область кривой пропорциональную метрической длине кривой. \en Set the parametric area of the curve proportional to the metric length of the curve. bool InitProportional( double t1, double t2 ); + /// \ru Установить пользовательскую функцию репараметризации. \en Set users reparameterization function. + bool InitByUsersFunction( MbFunction & repFunc ); + /// \ru Установить параметрическую область кривой пропорциональную метрической длине кривой. \en Set the parametric area of the curve proportional to the metric length of the curve. + static MbReparamCurve3D * CreateProportional( const MbCurve3D & curve, double t1, double t2 ); + /// \ru Установить пользовательскую функцию репараметризации. \en Set users reparameterization function. + static MbReparamCurve3D * CreateByFunction( const MbCurve3D & curve, MbFunction & repFunc ); // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeSpaceType IsA() const; // \ru Тип элемента \en Type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли объект копией \en Whether the object is a copy virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual double DistanceToPoint( const MbCartPoint3D & ) const; // \ru Расстояние до точки \en Distance to a point virtual void PrepareIntegralData( const bool forced ) const; // \ru Рассчитать временные (mutable) данные объекта. \en Calculate temporary (mutable) data of an object. @@ -129,7 +134,7 @@ public : virtual MbCurve3D & SetBasisCurve(); virtual MbCurve3D * Trimmed( double t1, double t2, int sense ) const; // \ru Создание усеченной кривой \en Create a trimmed curve - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double GetMetricLength() const; // \ru Метрическая длина кривой \en Metric length of a curve virtual double CalculateMetricLength() const; // \ru Метрическая длина кривой \en Metric length of a curve @@ -155,7 +160,7 @@ public : virtual void GetPointsByEvenLengthDelta( size_t n, std::vector & pnts ) const; // \ru Выдать n точек кривой с равными интервалами по длине дуги \en Get n points of curve equally spaced by the arc length // \ru Ближайшая проекция точки на кривую \en The nearest projection of a point onto the curve - virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = c3d_null ) const; + virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Определение точек касания изоклины \en Determination of tangent points of isocline virtual void GetIsoclinal( const MbVector3D & nor, SArray & tIso ) const; /// \ru Найти все особые точки функции кривизны кривой. @@ -167,8 +172,8 @@ public : // \ru Касание кривой через точку с заданной производной \en Tangent of curve through point with the given derivative //virtual bool GoThroughPointWithDerive( double t, MbCartPoint3D & p0, MbVector3D & v0 ); - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of a curve + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of a curve virtual size_t GetCount() const; virtual void ChangeCarrier( const MbSpaceItem & item, MbSpaceItem & init ); // \ru Изменение носителя \en Change a carrier @@ -205,7 +210,7 @@ public : virtual bool IsShift( const MbSpaceItem &, MbVector3D &, bool & isSame, double accuracy = LENGTH_EPSILON ) const; virtual bool IsSimilarToCurve( const MbCurve3D & curve, double precision = METRIC_PRECISION ) const; // \ru Подобные ли кривые для объединения (слива) \en Whether the curves for union (joining) are similar - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? // \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. virtual bool SetContinuousDerivativeLength( VERSION version, double epsilon = EPSILON ); diff --git a/C3d/Include/cur_silhouette_curve.h b/C3d/Include/cur_silhouette_curve.h index ee87c17..bc93e28 100644 --- a/C3d/Include/cur_silhouette_curve.h +++ b/C3d/Include/cur_silhouette_curve.h @@ -77,7 +77,7 @@ public : const MbMatrix3D & m, bool p ); /// \ru Конструктор по поверхности, двумерной кривой, типу кривой, вектору взгляда и флагу перспективы. \en Constructor by surface, two-dimensional curve, type of curve, vector of view and flag of perspective. MbSilhouetteCurve( const MbSurface & surf, const MbCurve & crv, MbeCurveBuildType _species, - const MbVector3D & e, bool p, const MbAxis3D * axis = c3d_null ); + const MbVector3D & e, bool p, const MbAxis3D * axis = nullptr ); protected: /// \ru Конструктор копирования. \en Copy-constructor. MbSilhouetteCurve( const MbSilhouetteCurve &, MbRegDuplicate * ); @@ -92,13 +92,13 @@ public: // \ru Общие функции геометрического объекта. \en Common functions of a geometric object. virtual MbeSpaceType IsA() const; // \ru Дать тип элемента. \en Get element type. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Определить, являются ли объекты одинаковыми. \en Determine whether objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Определить, являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate about an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate about an axis. virtual void Refresh(); // \ru Сбросить все временные данные. \en Reset all temporary data. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -136,8 +136,8 @@ public: // \ru Создать усеченную кривую. \en Create a trimmed curve virtual MbCurve3D * Trimmed( double t1, double t2, int sense ) const; // \ru Дать плоскую проекцию кривой(локальная система координат, шаг, параметрическая область). \en Get the planar projection of a curve (local coordinate system, step, parametric region). - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; virtual double GetMetricLength() const; // \ru Метрическая длина кривой \en Metric length of a curve virtual double GetLengthEvaluation() const; // \ru Оценить метрическую длину кривой. \en Estimate the metric length of a curve. @@ -145,16 +145,16 @@ public: virtual double GetParamToUnit() const; // \ru Дать приращение параметра, осреднённо соответствующее единичной длине в пространстве. \en Get parameter increment which averagingly corresponds to the unit length in space. virtual double GetParamToUnit( double t ) const; // \ru Дать приращение параметра, соответствующее единичной длине в пространстве. \en Get parameter increment which corresponds to the unit length in space. - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление. \en Change the direction. + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление. \en Change the direction. virtual MbeCurveBuildType GetBuildType() const; // \ru Дать тип кривой. \en Get type of curve. virtual bool InsertPoint( double & t ); // \ru Вставить точку и выдать её параметр. \en Insert point and get its parameter. virtual bool IsSimilarToCurve( const MbCurve3D & curve, double precision = METRIC_PRECISION ) const; // \ru Определить, подобные ли кривые для объединения (слива). \en Determine whether the curves for union (joining) are similar. /// \ru Определить, существует ли точное пространственное представление линии очерка. \en Determine whether the exact spatial representation of isocline curve exists. - bool IsExactSpaceCurve() const { return (approxExact && approxCurve != c3d_null); } + bool IsExactSpaceCurve() const { return (approxExact && approxCurve != nullptr); } /// \ru Получить указатель на кривую точного пространственное представление линии очерка. (Может и не быть). \en Get a pointer to the curve of exact spatial representation of isocline curve. (Can be absent). - const MbCurve3D * GetExactSpaceCurve() const { return approxExact ? approxCurve : c3d_null; } + const MbCurve3D * GetExactSpaceCurve() const { return approxExact ? approxCurve : nullptr; } /// \ru Дать пространственную копию линии очерка. \en Construct a new spatial copy of isocline curve. const MbCurve3D * GetApproxCurve() const { return approxCurve; } diff --git a/C3d/Include/cur_spiral.h b/C3d/Include/cur_spiral.h index e605fa4..b51de19 100644 --- a/C3d/Include/cur_spiral.h +++ b/C3d/Include/cur_spiral.h @@ -95,12 +95,12 @@ public : virtual MbeSpaceType IsA() const = 0; // \ru Тип элемента \en Type of element virtual MbeSpaceType Type() const; // \ru Тип элемента \en Type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame( const MbSpaceItem &, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual( const MbSpaceItem & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void AddYourGabaritTo( MbCube & ) const; // \ru Добавь свой габарит в куб \en Add your own bounding box into the cube virtual void PrepareIntegralData( const bool forced ) const; // \ru Рассчитать временные (mutable) данные объекта. \en Calculate temporary (mutable) data of an object. @@ -125,7 +125,7 @@ public : virtual void Explore( double & t, bool ext, MbCartPoint3D & pnt, MbVector3D & fir, MbVector3D * sec, MbVector3D * thir ) const = 0; - virtual void Inverse( MbRegTransform * iReg = c3d_null ) = 0; // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ) = 0; // \ru Изменить направление \en Change direction virtual double GetMetricLength() const; // \ru Выдать метрическую длину ограниченной кривой \en Get metric length of bounded curve virtual double GetLengthEvaluation() const; // \ru Оценка метрической длины кривой \en Estimation of metric length of the curve diff --git a/C3d/Include/cur_surface_curve.h b/C3d/Include/cur_surface_curve.h index 20df725..3efccd2 100644 --- a/C3d/Include/cur_surface_curve.h +++ b/C3d/Include/cur_surface_curve.h @@ -61,8 +61,8 @@ class MbCurveIntoNurbsInfo; // --- class MATH_CLASS MbSurfaceCurve : public MbCurve3D { protected : - MbCurve * curve; ///< \ru Плоская кривая в uv-пространстве (всегда не c3d_null). \en Planar curve in uv-space (always not c3d_null). - MbSurface * surface; ///< \ru Указатель на поверхность (всегда не c3d_null). \en Pointer to the surface (always not c3d_null). + MbCurve * curve; ///< \ru Плоская кривая в uv-пространстве (всегда не nullptr). \en Planar curve in uv-space (always not nullptr). + MbSurface * surface; ///< \ru Указатель на поверхность (всегда не nullptr). \en Pointer to the surface (always not nullptr). bool closed; ///< \ru Флаг замкнутости поверхностной кривой. \en An attribute of closedness of surface of curve. #ifdef C3D_SIGNAL_ENABLED @@ -109,7 +109,7 @@ protected : public : /// \ru Конструктор кривой на поверхности. \en Constructor of curve on surface. - MbSurfaceCurve( const MbSurface &, const MbCurve &, bool sameCurve, MbRegDuplicate * iReg = c3d_null ); + MbSurfaceCurve( const MbSurface &, const MbCurve &, bool sameCurve, MbRegDuplicate * iReg = nullptr ); /// \ru Конструктор отрезка прямой на поверхности. \en Constructor of a line segment on surface. MbSurfaceCurve( const MbSurface &, const MbCartPoint & p0, const MbCartPoint & p1, MbePlaneType type = pt_Curve ); /// \ru Конструктор граничной кривой поверхности. \en Constructor of boundary curve of surface. @@ -135,15 +135,15 @@ public: virtual MbeSpaceType IsA() const; // \ru Дать тип элемента. \en Get element type. virtual MbeSpaceType Type() const; // \ru Дать тип элемента. \en Get element type. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. /// \ru Копия кривой с той же поверхностью. \en Copy of curve with the same surface. MbSurfaceCurve & CurvesDuplicate() const; virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Определить, являются ли объекты одинаковыми. \en Determine whether objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Определить, являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate about an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate about an axis. virtual void AddYourGabaritTo( MbCube & ) const; // \ru Добавить свой габарит в куб. \en Add your own bounding box into a cube. virtual void Refresh(); // \ru Сбросить все временные данные. \en Reset all temporary data. virtual void PrepareIntegralData( const bool forced ) const; // \ru Рассчитать временные (mutable) данные объекта. \en Calculate temporary (mutable) data of an object. @@ -184,16 +184,16 @@ public: virtual MbCurve3D * Trimmed( double t1, double t2, int sense ) const; // \ru Создать усеченную кривую. \en Create a trimmed curve // \ru Вычислить ближайшую проекцию точки на кривую. \en Calculate the nearest projection of a point onto the curve. - virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = c3d_null ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление. \en Change the direction. + virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = nullptr ) const; + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление. \en Change the direction. virtual double Step ( double t, double sag ) const; // \ru Вычисление шага по стрелке прогиба. \en Calculation of parameter step by the sag. virtual double DeviationStep( double t, double angle ) const; // \ru Вычисление шага по углу отклонения нормали. \en Calculation of parameter step by the deviation angle. void SetTesselation( const MbContourOnSurface & contour, size_t indSegment ); // \ru Установить разбиение из контура. \en Set tessellation from contour. virtual double MetricStep ( double t, double length ) const; // \ru Вычисление шага параметра по длине. \en Calculation of parameter step by the given length. - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; // \ru Дать плоскую проекцию кривой. \en Get a planar projection of a curve. + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать плоскую проекцию кривой. \en Get a planar projection of a curve. /// \ru Вычислить плоскую проекцию кривой в частных случаях. \en Calculate planar projection of a curve in special cases. MbCurve * GetParticularMap( const MbMatrix3D & into, MbRect1D * pRgn, VERSION version ) const; @@ -246,7 +246,7 @@ public: /// \en Get the boundaries of the curve sections that are described by one analytical function. \~ virtual void GetAnalyticalFunctionsBounds( std::vector & params ) const; - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; // \ru Непрерывна ли первая производная? \en Have the first derivative the continuous? // \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. virtual bool SetContinuousDerivativeLength( VERSION version, double epsilon = EPSILON ); diff --git a/C3d/Include/cur_surface_intersection.h b/C3d/Include/cur_surface_intersection.h index 3804dc0..c17ba5d 100644 --- a/C3d/Include/cur_surface_intersection.h +++ b/C3d/Include/cur_surface_intersection.h @@ -125,9 +125,9 @@ private : struct SpaceCurveAuxiliaryData : public AuxiliaryData { MbCurve3D * spaceCurve; ///< \ru Пространственная аппроксимационная кривая. \en The spatial approximating curve. \~ - SpaceCurveAuxiliaryData() : spaceCurve( c3d_null ) {} - SpaceCurveAuxiliaryData( const SpaceCurveAuxiliaryData & c ) : spaceCurve( c3d_null ) { - if ( c.spaceCurve != c3d_null ) { + SpaceCurveAuxiliaryData() : spaceCurve( nullptr ) {} + SpaceCurveAuxiliaryData( const SpaceCurveAuxiliaryData & c ) : spaceCurve( nullptr ) { + if ( c.spaceCurve != nullptr ) { spaceCurve = static_cast( &c.spaceCurve->Duplicate() ); spaceCurve->AddRef(); } @@ -205,7 +205,7 @@ public : MbSurfaceIntersectionCurve( const MbSurface & surf1, const MbCurve & curve1, const MbSurface & surf2, const MbCurve & curve2, MbeCurveBuildType buildType, bool sameOne, bool sameTwo, - MbRegDuplicate * iReg = c3d_null ); + MbRegDuplicate * iReg = nullptr ); /** \brief \ru Конструктор по поверхностям и двумерным точкам. \en Constructor by surfaces and two-dimensional points. \~ \details \ru Конструктор кривой пересечения по поверхностям и двумерным точкам. \n @@ -309,15 +309,15 @@ public: \{ */ virtual MbeSpaceType IsA() const; // \ru Дать тип элемента. \en Get element type. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. /// \ru Сделать копию кривой на тех же поверхностях. \en Create a copy of a curve on the same surfaces. MbSurfaceIntersectionCurve & CurvesDuplicate() const { return *new MbSurfaceIntersectionCurve( this ); } virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Определить, равны ли объекты. \en Determine whether the objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Определить, являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate about an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate about an axis. virtual void AddYourGabaritTo( MbCube & r ) const; // \ru Добавить свой габарит в куб. \en Add your own bounding box into a cube. virtual void CalculateMesh( const MbStepData & stepData, const MbFormNote & note, MbMesh & mesh ) const; // \ru Построить полигональную копию mesh. \en Build polygonal copy mesh. virtual void Refresh(); // \ru Сбросить все временные данные. \en Reset all temporary data. @@ -358,7 +358,7 @@ public: // \ru Функции приближённого быстрого вычисления точки и производных на кривой. \en Functions of approximate fast calculation of point and derivatives on the curve. virtual void FastApproxExplore( double & t, MbCartPoint3D & pnt, MbVector3D & fir, MbVector3D * sec ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление. \en Change the direction. + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление. \en Change the direction. // \ru Функции движения по кривой. \en Functions of moving along the curve. // \ru Вычислить шаг параметра по величине прогиба кривой. \en Calculate step of parameter by value of sag of curve. @@ -405,8 +405,8 @@ public: virtual void CalculatePolygon( const MbStepData & stepData, MbPolygon3D &polygon ) const; // \ru Рассчитать полигон. \en Calculate a polygon. // \ru Построить плоскую проекцию некоторой части пространственной кривой. \en Construct a planar projection of a piece of a space curve. - virtual MbCurve * GetMap( const MbMatrix3D & into, MbRect1D * pRegion = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; + virtual MbCurve * GetMap( const MbMatrix3D & into, MbRect1D * pRegion = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать проекцию ребра на плоскость. \en Get the edge projection onto plane. virtual MbCurve * GetProjection( const MbPlacement3D & place, VERSION version ) const; @@ -769,7 +769,7 @@ inline bool MbSurfaceIntersectionCurve::CopyReadyMutable( const MbSurfaceInterse changed = true; } MbCurve3D * sspaceCurve = s.spaceCurveCache()->spaceCurve; - if ( sspaceCurve != c3d_null && spaceCurveCache.LongTerm()->spaceCurve == c3d_null ) { + if ( sspaceCurve != nullptr && spaceCurveCache.LongTerm()->spaceCurve == nullptr ) { { ScopedLock cacheLock( spaceCurveCache.GetLock() ); spaceCurveCache.LongTerm()->spaceCurve = (MbCurve3D *)&sspaceCurve->Duplicate(); diff --git a/C3d/Include/cur_trimmed_curve.h b/C3d/Include/cur_trimmed_curve.h index c9921b2..73be073 100644 --- a/C3d/Include/cur_trimmed_curve.h +++ b/C3d/Include/cur_trimmed_curve.h @@ -42,7 +42,7 @@ class MbRegTransform; class MATH_CLASS MbTrimmedCurve : public MbCurve { // \ru Усечение может быть на продолжении кривой (внесенные изменения помечены как E13865) \en Trimming can be on curve extension (made changes are marked as E13865) protected : - MbCurve * basisCurve; ///< \ru Базовая кривая (не может быть c3d_null). \en Base curve (can't be c3d_null). + MbCurve * basisCurve; ///< \ru Базовая кривая (не может быть nullptr). \en Base curve (can't be nullptr). double trim1; ///< \ru Параметры начальной точки \en Parameters of start point double trim2; ///< \ru Параметры конечной точки \en Parameters of end point int sense; ///< \ru Флаг совпадения направления с направлением базовой кривой (sense==0 не допускается) \en Flag of coincidence of the direction with the direction of the base curve (sense==0 isn't allowed) @@ -75,10 +75,10 @@ public : virtual bool IsSimilar( const MbPlaneItem & ) const; // \ru Являются ли элементы подобными \en Whether the elements are similar virtual bool SetEqual ( const MbPlaneItem & ); // \ru Сделать элементы равными \en Make the elements equal virtual bool IsSame ( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли кривая curve копией данной кривой ? \en Whether curve 'curve' is a duplicate of the current curve. - virtual void Transform( const MbMatrix &, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Поворот \en Rotation - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual void Transform( const MbMatrix &, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Поворот \en Rotation + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual void AddYourGabaritTo( MbRect & ) const; // \ru Добавь свой габарит в прямой прям-к \en Add your own gabarit into the given bounding rectangle virtual void CalculateGabarit( MbRect & ) const; // \ru Определить габаритный прямоугольник кривой. \en Detect the bounding box of a curve. virtual bool IsInRectForDeform( const MbRect & r ) const; // \ru Виден ли объект в заданном прямоугольнике для деформации \en Whether the object is visible in the given rectangle for deformation @@ -189,7 +189,7 @@ public : void SetTrim1( double t ) { trim1 = t; InitParam( trim1, trim2, sense ); } void SetTrim2( double t ) { trim2 = t; InitParam( trim1, trim2, sense ); } - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление кривой \en Change direction of a curve + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление кривой \en Change direction of a curve virtual bool GetAxisPoint( MbCartPoint & p ) const; // \ru Точка для построения оси \en Point for the axis construction virtual bool IsSimilarToCurve( const MbCurve & curve, double precision = PARAM_PRECISION ) const; // \ru Подобные ли кривые для объединения (слива) \en Whether the curves for union (joining) are similar virtual double GetRadius() const; // \ru Дать физический радиус объекта или ноль, если это невозможно. \en Get the physical radius of the object or null if it impossible. diff --git a/C3d/Include/cur_trimmed_curve3d.h b/C3d/Include/cur_trimmed_curve3d.h index 651c99a..e575b14 100644 --- a/C3d/Include/cur_trimmed_curve3d.h +++ b/C3d/Include/cur_trimmed_curve3d.h @@ -59,13 +59,13 @@ public : // \ru Общие функции математического объекта \en Common functions of the mathematical object virtual MbeSpaceType IsA() const; // \ru Тип элемента \en Type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли объект копией \en Whether the object is a copy virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void Refresh(); // \ru Сбросить все временные данные \en Reset all temporary data virtual void PrepareIntegralData( const bool forced ) const; // \ru Рассчитать временные (mutable) данные объекта. \en Calculate temporary (mutable) data of an object. @@ -104,15 +104,15 @@ public : virtual MbCurve3D & SetBasisCurve(); virtual MbCurve3D * Trimmed( double t1, double t2, int sense ) const; // \ru Создание усеченной кривой \en Create a trimmed curve - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Curvature ( double ) const; // \ru Кривизна усеченной кривой \en Curvature of a trimmed curve virtual double Step ( double t, double sag ) const; // \ru Вычисление шага по стрелке прогиба. \en Calculation of parameter step by the sag. virtual double DeviationStep( double t, double angle ) const; // \ru Вычисление шага по углу отклонения нормали. \en Calculation of parameter step by the deviation angle. virtual double MetricStep ( double t, double length ) const; // \ru Вычисление шага параметра по длине. \en Calculation of parameter step by the given length. virtual bool IsDegenerate( double eps = METRIC_PRECISION ) const; // \ru Проверка вырожденности кривой \en Check for curve degeneracy - virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of a curve + virtual MbCurve * GetMap( const MbMatrix3D &, MbRect1D * pRgn = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; // \ru Дать плоскую проекцию кривой \en Get a planar projection of a curve virtual size_t GetCount() const; virtual void ChangeCarrier( const MbSpaceItem & item, MbSpaceItem & init ); // \ru Изменение носителя \en Change a carrier virtual bool IsPlanar ( double accuracy = METRIC_EPSILON ) const; // \ru Является ли кривая плоской \en Whether the curve is planar @@ -137,7 +137,7 @@ public : bool IsBaseParamOn( double t ) const; // \ru Находится ли параметр базовой кривой в диапазоне усеченной кривой \en Whether the parameter of base curve is in range of a trimmed curve // \ru Ближайшая проекция точки на кривую. \en The nearest projection of a point onto the curve. - virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = c3d_null ) const; // \ru Ближайшая проекция точки на кривую \en The nearest projection of a point onto the curve + virtual bool NearPointProjection( const MbCartPoint3D &, double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Ближайшая проекция точки на кривую \en The nearest projection of a point onto the curve /// \ru Найти все особые точки функции кривизны кривой. /// \en Find all the special points of the curvature function of the curve. virtual void GetCurvatureSpecialPoints( std::vector & points ) const; diff --git a/C3d/Include/curve.h b/C3d/Include/curve.h index a14dd52..0add862 100644 --- a/C3d/Include/curve.h +++ b/C3d/Include/curve.h @@ -98,10 +98,10 @@ public : virtual MbePlaneType IsA() const = 0; // \ru Тип элемента. \en A type of element. virtual MbePlaneType Type() const; // \ru Групповой тип элемента. \en Group element type. virtual MbePlaneType Family() const; // \ru Семейство объекта. \en Family of object. - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix &, MbRegTransform * ireg = c3d_null, const MbSurface * newSurface = c3d_null ) = 0; // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ) = 0; // \ru Сдвинуть вдоль вектора. \en Move along a vector. - virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ) = 0; // \ru Поворот вокруг точки на угол. \en Rotation at angle around a point. + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix &, MbRegTransform * ireg = nullptr, const MbSurface * newSurface = nullptr ) = 0; // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ) = 0; // \ru Сдвинуть вдоль вектора. \en Move along a vector. + virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ) = 0; // \ru Поворот вокруг точки на угол. \en Rotation at angle around a point. virtual bool SetEqual( const MbPlaneItem & ) = 0; // \ru Сделать объект равным данному. \en Make an object equal to a given one. virtual bool IsSame( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const = 0; // \ru Является ли кривая curve копией данной кривой? \en Is a curve a copy of a given curve? virtual void Refresh(); // \ru Сбросить все временные данные. \en Reset all temporary data. @@ -337,9 +337,9 @@ public : \param[out] fir - \ru Производная. \en Derivative with respect to t. \~ \param[out] sec - \ru Вторая производная по t, если не ноль. - \en Second derivative with respect to t, if not c3d_null. \~ + \en Second derivative with respect to t, if not nullptr. \~ \param[out] thir - \ru Третья производная по t, если не ноль. - \en Third derivative with respect to t, if not c3d_null. \~ + \en Third derivative with respect to t, if not nullptr. \~ \ingroup Curves_3D */ virtual void Explore( double & t, bool ext, @@ -478,7 +478,7 @@ public : /// \ru Сбросить текущее значение параметра. \en Reset the current value of parameter. virtual void ResetTCalc() const; /// \ru Изменить направления кривой на противоположное. \en Set the opposite direction of curve. - virtual void Inverse( MbRegTransform * iReg = c3d_null ) = 0; + virtual void Inverse( MbRegTransform * iReg = nullptr ) = 0; /// \ru Построить эквидистантную кривую, смещённую на заданное расстояние. \en Construct the equidistant curve which is shifted by the given value. virtual MbCurve * Offset( double rad ) const; @@ -551,10 +551,10 @@ public : \en A constructed NURBS-curve. \~ \param[in] nInfo - \ru Параметры преобразования кривой в NURBS. \en Parameters of conversion of a curve to NURBS. \~ - \result \ru Построенная NURBS кривая или c3d_null при неуспешном построении. - \en The constructed NURBS curve or c3d_null in a case of failure. \~ + \result \ru Построенная NURBS кривая или nullptr при неуспешном построении. + \en The constructed NURBS curve or nullptr in a case of failure. \~ */ - MbNurbs * NurbsCurve( const MbCurveIntoNurbsInfo * nInfo = c3d_null ) const; + MbNurbs * NurbsCurve( const MbCurveIntoNurbsInfo * nInfo = nullptr ) const; /** \brief \ru Построить NURBS копию кривой. \en Construct a NURBS copy of a curve. \~ @@ -576,8 +576,8 @@ public : 'sense' > 0 - direction coincide. \~ \param[in] nInfo - \ru Параметры преобразования кривой в NURBS. \en Parameters of conversion of a curve to NURBS. \~ - \result \ru Построенная NURBS кривая или c3d_null при неуспешном построении. - \en The constructed NURBS curve or c3d_null in a case of failure. \~ + \result \ru Построенная NURBS кривая или nullptr при неуспешном построении. + \en The constructed NURBS curve or nullptr in a case of failure. \~ */ virtual MbNurbs * NurbsCurve( const MbCurveIntoNurbsInfo & nInfo ) const = 0; @@ -591,8 +591,8 @@ public : If the flag of accurate approximation is not set in parameters then NURBS without multiple knots is constructed. \~ \param[in] tParameters - \ru Параметры построения NURBS копии кривой. \en Parameters for the construction of a NURBS copy of the curve. \~ - \result \ru Построенная NURBS кривая или c3d_null при неуспешном построении. - \en The constructed NURBS curve or c3d_null in a case of failure. \~ + \result \ru Построенная NURBS кривая или nullptr при неуспешном построении. + \en The constructed NURBS curve or nullptr in a case of failure. \~ */ virtual MbCurve * NurbsCurve( const MbNurbsParameters & tParameters ) const; @@ -709,10 +709,10 @@ public : \en End parameter of trimming. \~ \param[in, out] part2 - \ru Может заполниться результатом усечения, если не смогли изменить саму кривую. В этом случае возвращаемый результат dp_Degenerated. - Иначе = c3d_null. + Иначе = nullptr. \en This may be filled by a result of trimming if the curve was not changed. In this case the returned value is dp_Degenerated. - Otherwise c3d_null is returned. \~ + Otherwise nullptr is returned. \~ \result \ru Состояние кривой после модификации:\n dp_Degenerated - кривая выродилась, может быть три варианта: кривая не была изменена, так как в результате преобразования она бы выродилась, @@ -804,7 +804,7 @@ public : \en True - if there is found a projection which satisfies to all input conditions. \~ */ virtual bool NearPointProjection( const MbCartPoint & pnt, double xEpsilon, double yEpsilon, - double & t, bool ext, MbRect1D * tRange = c3d_null ) const; + double & t, bool ext, MbRect1D * tRange = nullptr ) const; /** \brief \ru Вычислить проекцию точки на кривую. \en Calculate the point projection to the curve. \~ @@ -1052,7 +1052,7 @@ public : \en A length of a curve between points. \~ */ virtual double LengthBetween2Points( MbCartPoint & p1, MbCartPoint & p2, - MbCartPoint * pc = c3d_null ) const; + MbCartPoint * pc = nullptr ) const; /// \ru Вычислить центр тяжести кривой. \en Calculate the center of gravity of a curve. virtual bool GetWeightCentre ( MbCartPoint & ) const; @@ -1269,7 +1269,7 @@ public : \param[in] epsilon - \ru Погрешность вычисления. \en The accuracy of the calculation. \~ */ - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; /** \brief \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. diff --git a/C3d/Include/curve3d.h b/C3d/Include/curve3d.h index 7a8023f..40bb35e 100644 --- a/C3d/Include/curve3d.h +++ b/C3d/Include/curve3d.h @@ -107,14 +107,14 @@ public : virtual MbeSpaceType IsA() const = 0; // \ru Тип элемента. \en A type of element. virtual MbeSpaceType Type() const; // \ru Групповой тип элемента. \en Group element type. virtual MbeSpaceType Family() const; // \ru Семейство объекта. \en Family of object. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Сделать копию элемента. \en Create a copy of the element. /// \ru Сделать копию с измененным направлением. \en Create a copy with changed direction. virtual MbCurve3D & InverseDuplicate() const; virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const = 0; // \ru Являются ли объекты равными. \en Determine whether objects are equal. virtual bool SetEqual ( const MbSpaceItem & ) = 0; // \ru Сделать равным. \en Make equal. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ) = 0; // \ru Преобразовать объект согласно матрице. \en Transform an object according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ) = 0; // \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ) = 0; // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ) = 0; // \ru Преобразовать объект согласно матрице. \en Transform an object according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ) = 0; // \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ) = 0; // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual double DistanceToPoint( const MbCartPoint3D & ) const; // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. virtual void AddYourGabaritTo( MbCube & ) const; // \ru Добавить габарит кривой в куб. \en Add a bounding box of a curve to a cube. /// \ru Перевести все временные (mutable) данные объекта в неопределённое (исходное) состояние. \en Translate all the time (mutable) data objects in an inconsistent (initial) state. @@ -266,9 +266,9 @@ public : \param[out] fir - \ru Производная. \en Derivative with respect to t. \~ \param[out] sec - \ru Вторая производная по t, если не ноль. - \en Second derivative with respect to t, if not c3d_null. \~ + \en Second derivative with respect to t, if not nullptr. \~ \param[out] thir - \ru Третья производная по t, если не ноль. - \en Third derivative with respect to t, if not c3d_null. \~ + \en Third derivative with respect to t, if not nullptr. \~ \ingroup Curves_3D */ virtual void Explore( double & t, bool ext, @@ -277,9 +277,9 @@ public : /** \brief \ru Вычислить точку и производные на кривой. \en Calculate point and derivatives on the curve. \~ \details \ru Функция перегружена у MbSurfaceIntersectionCurve и MbSilhouetteCurve для приближённого быстрого вычисления точки и производных. - В остальных поверхностях эквивалентна функции Explore(t,false,pnt,fir,sec,c3d_null). + В остальных поверхностях эквивалентна функции Explore(t,false,pnt,fir,sec,nullptr). \en The function is overloaded in MbSurfaceIntersectionCurve and MbSilhouetteCurve for the fast approximated calculation of a point and derivatives. - In other surfaces it is equivalent to the function Explore(t,false,pnt,fir,sec,c3d_null). \~ + In other surfaces it is equivalent to the function Explore(t,false,pnt,fir,sec,nullptr). \~ \param[in] t - \ru Параметр. \en Parameter. \~ \param[out] pnt - \ru Вычисленная точка. @@ -287,7 +287,7 @@ public : \param[out] fir - \ru Производная. \en Derivative with respect to t. \~ \param[out] sec - \ru Вторая производная по t, если не ноль. - \en Second derivative with respect to t, if not c3d_null. \~ + \en Second derivative with respect to t, if not nullptr. \~ \ingroup Curves_3D */ virtual void FastApproxExplore( double & t, MbCartPoint3D & pnt, MbVector3D & fir, MbVector3D * sec ) const; @@ -372,7 +372,7 @@ public : /// \ru Сбросить текущее значение параметра. \en Reset the current value of parameter. virtual void ResetTCalc() const; /// \ru Изменить направление кривой. \en Change direction of a curve. - virtual void Inverse( MbRegTransform * iReg = c3d_null ) = 0; + virtual void Inverse( MbRegTransform * iReg = nullptr ) = 0; /// \ru Вернуть базовую кривую, если есть, или себя \en Returns the base curve if exists or itself virtual const MbCurve3D & GetBasisCurve() const; /// \ru Вернуть базовую кривую, если есть, или себя \en Returns the base curve if exists or itself @@ -392,10 +392,10 @@ public : The number of knots for NURBS is defined depending on the curve. \~ \param[in] nInfo - \ru Параметры преобразования кривой в NURBS. \en Parameters of conversion of a curve to NURBS. \~ - \result \ru Построенная NURBS кривая или c3d_null при неуспешном построении. - \en The constructed NURBS curve or c3d_null in a case of failure. \~ + \result \ru Построенная NURBS кривая или nullptr при неуспешном построении. + \en The constructed NURBS curve or nullptr in a case of failure. \~ */ - MbNurbs3D * NurbsCurve( const MbCurveIntoNurbsInfo * nInfo = c3d_null ) const; + MbNurbs3D * NurbsCurve( const MbCurveIntoNurbsInfo * nInfo = nullptr ) const; /** \brief \ru Построить NURBS копию кривой. \en Construct a NURBS copy of a curve. \~ @@ -415,8 +415,8 @@ public : 'sense' > 0 - direction coincide. \~ \param[in] nInfo - \ru Параметры преобразования кривой в NURBS. \en Parameters of conversion of a curve to NURBS. \~ - \result \ru Построенная NURBS кривая или c3d_null при неуспешном построении. - \en The constructed NURBS curve or c3d_null in a case of failure. \~ + \result \ru Построенная NURBS кривая или nullptr при неуспешном построении. + \en The constructed NURBS curve or nullptr in a case of failure. \~ */ virtual MbNurbs3D * NurbsCurve( const MbCurveIntoNurbsInfo & nInfo ) const; @@ -430,8 +430,8 @@ public : If the flag of accurate approximation is not set in parameters then NURBS without multiple knots is constructed. \~ \param[in] tParameters - \ru Параметры построения NURBS копии кривой. \en Parameters for the construction of a NURBS copy of the curve. \~ - \result \ru Построенная NURBS кривая или c3d_null при неуспешном построении. - \en The constructed NURBS curve or c3d_null in a case of failure. \~ + \result \ru Построенная NURBS кривая или nullptr при неуспешном построении. + \en The constructed NURBS curve or nullptr in a case of failure. \~ \ingroup Curves_3D */ virtual MbCurve3D * NurbsCurve( const MbNurbsParameters & tParameters ) const; @@ -444,8 +444,8 @@ public : \en Parameters for the construction of a NURBS copy of the curve. \~ \param[in] epsilon - \ru Точность аппроксимации. \en The tolerance of approximation. \~ - \result \ru Построенная NURBS кривая или c3d_null при неуспешном построении. - \en The constructed NURBS curve or c3d_null in a case of failure. \~ + \result \ru Построенная NURBS кривая или nullptr при неуспешном построении. + \en The constructed NURBS curve or nullptr in a case of failure. \~ */ virtual size_t NurbsCurveMinPoints( const MbNurbsParameters & tParameters, double epsilon = c3d::METRIC_DELTA ) const; @@ -655,7 +655,7 @@ public : \en True - if there is found a projection which satisfies to all input conditions. \~ \ingroup Curves_3D */ - virtual bool NearPointProjection ( const MbCartPoint3D &pnt, double & t, bool ext, MbRect1D * tRange = c3d_null ) const; + virtual bool NearPointProjection ( const MbCartPoint3D &pnt, double & t, bool ext, MbRect1D * tRange = nullptr ) const; // \ru Изоклины кривой (метод Ньютона). \en Isoclines of a curve (Newton method). /** \brief \ru Найти изоклины кривой. @@ -727,17 +727,17 @@ public : \param[in] version - \ru Версия, по умолчанию - последняя. \en Version, last by default. \~ \param[in, out] coincParams - \ru Флаг совпадения параметризации исходной кривой и ее проекции \n - если coincParams != c3d_null, функция попытается сделать проекцию с совпадающей параметризацией \n + если coincParams != nullptr, функция попытается сделать проекцию с совпадающей параметризацией \n если в результате *coincParams = true, у проекции параметризация совпадает с параметрицацией исходной кривой. \en A flag of coincidence between parameterization of initial curve and its projection \n - if coincParams != c3d_null then the function tries to create a projection with coincident parameterization \n + if coincParams != nullptr then the function tries to create a projection with coincident parameterization \n if *coincParams = true then parameterization of projection coincides with parameterization of initial curve. \~ \return \ru Двумерная проекция кривой. \en Two-dimensional projection of a curve \~ \ingroup Curves_3D */ - virtual MbCurve * GetMap( const MbMatrix3D & into, MbRect1D * pRegion = c3d_null, - VERSION version = Math::DefaultMathVersion(), bool * coincParams = c3d_null ) const; + virtual MbCurve * GetMap( const MbMatrix3D & into, MbRect1D * pRegion = nullptr, + VERSION version = Math::DefaultMathVersion(), bool * coincParams = nullptr ) const; /** \brief \ru Построить плоскую проекцию некоторой части пространственной кривой. \en Construct a planar projection of a piece of a space curve. \~ @@ -754,7 +754,7 @@ public : \ingroup Curves_3D */ virtual MbCurve * GetMapPsp( const MbMatrix3D & into, double zNear, - MbRect1D * pRegion = c3d_null ) const; + MbRect1D * pRegion = nullptr ) const; /** \brief \ru Построить плоскую проекцию пространственной кривой на плоскость. \en Construct a planar projection of a space curve to a plane. \~ @@ -794,7 +794,7 @@ public : \param[in] epsilon - \ru Погрешность вычисления. \en The accuracy of the calculation. \~ */ - virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = c3d_null, double epsilon = EPSILON ) const; + virtual bool IsContinuousDerivative( bool & contLength, bool & contDirect, c3d::DoubleVector * params = nullptr, double epsilon = EPSILON ) const; /** \brief \ru Устранить разрывы первых производных по длине. \en Eliminate the discontinuities of the first derivative at length. diff --git a/C3d/Include/dxf_converter.h b/C3d/Include/dxf_converter.h index 99f0093..597d4da 100644 --- a/C3d/Include/dxf_converter.h +++ b/C3d/Include/dxf_converter.h @@ -267,8 +267,8 @@ public: const std::vector< SPtr > & m_faces ); size_t GetSolidBodiesCount() const { return solid_bodies.Count(); } - const DXFSolidBody * GetSolidBody( size_t k ) const { return ((k < solid_bodies.Count()) ? solid_bodies[k] : c3d_null); } - DXFSolidBody * SetSolidBody( size_t k ) { return ((k < solid_bodies.Count()) ? solid_bodies[k] : c3d_null); } + const DXFSolidBody * GetSolidBody( size_t k ) const { return ((k < solid_bodies.Count()) ? solid_bodies[k] : nullptr); } + DXFSolidBody * SetSolidBody( size_t k ) { return ((k < solid_bodies.Count()) ? solid_bodies[k] : nullptr); } const DXFCompositeData & GetData() const { return data;} @@ -406,7 +406,7 @@ public: \en Complete the document creation. \~ */ void CompleteDocument ( ItModelDocument & model_document, - IProgressIndicator * indicator = c3d_null ); + IProgressIndicator * indicator = nullptr ); /// \ru Отобразить текующее состояние хода операции. \en Show the current state of operation progress. void ConvertLastComposite( uint32 defaultColor ); diff --git a/C3d/Include/func_analytical_function.h b/C3d/Include/func_analytical_function.h index c946b99..78e1bd9 100644 --- a/C3d/Include/func_analytical_function.h +++ b/C3d/Include/func_analytical_function.h @@ -77,7 +77,7 @@ public : virtual void Explore( double & t, bool ext, double & val, double & fir, double * sec, double * thr ) const; - virtual void Inverse ( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse ( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step ( double t, double sag ) const; virtual double DeviationStep( double t, double angle ) const; @@ -88,7 +88,7 @@ public : virtual bool IsConst () const; virtual bool IsLine () const; - virtual void SetOffsetFunc( double distOld, double distNew ); // \ru Сместить функцию \en Shift a function + virtual void SetOffsetFunc( double off, double scale ); // \ru Сместить функцию \en Shift a function virtual bool SetLimitParam( double newTMin, double newTMax ); // \ru Установить область изменения параметра \en Set range of parameter virtual void SetLimitValue( size_t n, double newValue ); // \ru Установить значение на конце ( 1 - в начале, 2 - в конце) \en Set the value at the end (1 - at start point, 2 - at end point) virtual double GetLimitValue( size_t n ) const; // \ru Дать значение на конце ( 1 - в начале, 2 - в конце) \en Get the value at the end (1 - at start point, 2 - at end point) @@ -162,7 +162,7 @@ public : virtual double SecondDer ( double & t ) const; // \ru Вторая производная по t \en The second derivative with respect to t virtual double ThirdDer ( double & t ) const; // \ru Третья производная по t \en The third derivative with respect to t - virtual void Inverse ( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse ( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step ( double t, double sag ) const; virtual double DeviationStep ( double t, double angle ) const; @@ -173,7 +173,7 @@ public : virtual bool IsConst () const; virtual bool IsLine () const; - virtual void SetOffsetFunc ( double distOld, double distNew ); // \ru Сместить функцию \en Shift a function + virtual void SetOffsetFunc ( double off, double scale); // \ru Сместить функцию \en Shift a function virtual bool SetLimitParam ( double newTMin, double newTMax ); // \ru Установить область изменения параметра \en Set range of parameter virtual void SetLimitValue ( size_t n, double newValue ); // \ru Установить значение на конце ( 1 - в начале, 2 - в конце) \en Set the value at the end (1 - at start point, 2 - at end point) virtual double GetLimitValue ( size_t n ) const; // \ru Дать значение на конце ( 1 - в начале, 2 - в конце) \en Get the value at the end (1 - at start point, 2 - at end point) diff --git a/C3d/Include/func_const_function.h b/C3d/Include/func_const_function.h index 9fcb2ba..6de0b04 100644 --- a/C3d/Include/func_const_function.h +++ b/C3d/Include/func_const_function.h @@ -61,7 +61,7 @@ public: virtual void Explore( double & t, bool ext, double & val, double & fir, double * sec, double * thr ) const; - virtual void Inverse ( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse ( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step( double t, double sag ) const; virtual double DeviationStep( double t, double angle ) const; @@ -73,7 +73,7 @@ public: virtual bool IsConst() const; virtual bool IsLine () const; - virtual void SetOffsetFunc( double distOld, double distNew ); // \ru Сместить функцию \en Shift a function + virtual void SetOffsetFunc( double off, double scale ); // \ru Сместить функцию \en Shift a function virtual bool SetLimitParam( double newTMin, double newTMax ); // \ru Установить область изменения параметра \en Set range of parameter virtual void SetLimitValue( size_t n, double newValue ); // \ru Установить значение на конце ( 1 - в начале, 2 - в конце) \en Set the value at the end (1 - at start point, 2 - at end point) virtual double GetLimitValue( size_t n ) const; // \ru Дать значение на конце ( 1 - в начале, 2 - в конце) \en Get the value at the end (1 - at start point, 2 - at end point) diff --git a/C3d/Include/func_cubic_function.h b/C3d/Include/func_cubic_function.h index 2278fba..608bbc3 100644 --- a/C3d/Include/func_cubic_function.h +++ b/C3d/Include/func_cubic_function.h @@ -31,7 +31,11 @@ protected: SArray valueList; ///< \ru Контрольные точки. \en The control points. SArray firstList; ///< \ru Производные в контрольных точках. \en The derivatives in control points. SArray tList; ///< \ru Значения параметров функции, которую моделирует кубический сплайн. \en The values of parameters on a function which is modeled by a cubic spline. - bool closed; ///< \ru Признак замкнутости кривой. \en An attribute of curve closedness. + bool monotonic; ///< \ru Признак монотонности набора значений. \en The sign of monotonicity of a set of values. + bool closed; ///< \ru Для немонотонного набора значений - признак замыкания на начальное значение. + ///< \ru Для монотонного набора значений - признак периодичности набора. + ///< \en For a non-monotonic set of values, the sign of closeness to the initial value. + ///< \en For a monotonic set of values, the sign of periodicity of a monotonic set of values. ptrdiff_t uppIndex; ///< \ru Количество интервалов (число точек - 1). \en The number of intervals (a number of points - 1). public : @@ -85,7 +89,7 @@ public: // \ru Вычислить аргумент t по значению функции. \en Calculate the argument t by the function value. virtual double Argument( double & val ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step( double t, double sag ) const; virtual double DeviationStep( double t, double angle ) const; @@ -97,7 +101,7 @@ public: virtual bool IsConst() const; virtual bool IsLine () const; - virtual void SetOffsetFunc( double distOld, double distNew ); // \ru Сместить функцию \en Shift a function + virtual void SetOffsetFunc( double off, double scale ); // \ru Сместить функцию \en Shift a function virtual bool SetLimitParam( double newTMin, double newTMax ); // \ru Установить область изменения параметра \en Set range of parameter virtual void SetLimitValue( size_t n, double newValue ); // \ru Установить значение на конце ( 1 - в начале, 2 - в конце) \en Set the value at the end (1 - at start point, 2 - at end point) virtual double GetLimitValue( size_t n ) const; // \ru Дать значение на конце ( 1 - в начале, 2 - в конце) \en Get the value at the end (1 - at start point, 2 - at end point) diff --git a/C3d/Include/func_cubic_spline_function.h b/C3d/Include/func_cubic_spline_function.h index d66ac73..94b98e0 100644 --- a/C3d/Include/func_cubic_spline_function.h +++ b/C3d/Include/func_cubic_spline_function.h @@ -72,7 +72,7 @@ public: virtual void Explore( double & t, bool ext, double & val, double & fir, double * sec, double * thr ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step( double t, double sag ) const; virtual double DeviationStep( double t, double angle ) const; @@ -84,7 +84,7 @@ public: virtual bool IsConst() const; virtual bool IsLine () const; - virtual void SetOffsetFunc( double distOld, double distNew ); // \ru Сместить функцию \en Shift a function + virtual void SetOffsetFunc( double off, double scale ); // \ru Сместить функцию \en Shift a function virtual bool SetLimitParam( double newTMin, double newTMax ); // \ru Установить область изменения параметра \en Set range of parameter virtual void SetLimitValue( size_t n, double newValue ); // \ru Установить значение на конце ( 1 - в начале, 2 - в конце) \en Set the value at the end (1 - at start point, 2 - at end point) virtual double GetLimitValue( size_t n ) const; // \ru Дать значение на конце ( 1 - в начале, 2 - в конце) \en Get the value at the end (1 - at start point, 2 - at end point) diff --git a/C3d/Include/func_line_function.h b/C3d/Include/func_line_function.h index 17897c2..86c8782 100644 --- a/C3d/Include/func_line_function.h +++ b/C3d/Include/func_line_function.h @@ -67,7 +67,7 @@ public: // \ru Вычислить аргумент t по значению функции. \en Calculate the argument t by the function value. virtual double Argument( double & val ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step( double t, double sag ) const; virtual double DeviationStep( double t, double angle ) const; @@ -84,7 +84,7 @@ public: // \ru Разбить функцию точкой с параметром t и вернуть отрезанную часть. \en Function break by the parameter t, and cut off part of the function: begs == true - save the initial half, beg == false - save the final half. virtual MbFunction * BreakFunction( double t, bool beg ); - virtual void SetOffsetFunc( double distOld, double distNew ); // \ru Сместить функцию \en Shift a function + virtual void SetOffsetFunc( double off, double scale ); // \ru Сместить функцию \en Shift a function virtual bool SetLimitParam( double newTMin, double newTMax ); // \ru Установить область изменения параметра \en Set range of parameter virtual void SetLimitValue( size_t n, double newValue ); // \ru Установить значение на конце ( 1 - в начале, 2 - в конце) \en Set the value at the end (1 - at beginning, 2 - at ending) virtual double GetLimitValue( size_t n ) const; // \ru Дать значение на конце ( 1 - в начале, 2 - в конце) \en Get the value at the end (1 - at beginning, 2 - at ending) diff --git a/C3d/Include/func_mono_smooth_function.h b/C3d/Include/func_mono_smooth_function.h index 6ff8c53..aebab3d 100644 --- a/C3d/Include/func_mono_smooth_function.h +++ b/C3d/Include/func_mono_smooth_function.h @@ -65,6 +65,8 @@ protected: c3d::DoubleVector bet; ///< \ru Параметры beta-функций. \en Parameters of beta functions. c3d::DoubleVector gam; ///< \ru Параметры gamma-функций. \en Parameters of gamma functions. bool cls; ///< \ru Периодичность набора значений.\en Periodicity of the set of values. + double tBegin; ///< \ru Начальный параметр.\en Begin parameter. + double tEnd; ///< \ru Конечный параметр.\en End parameter. private: /// \ru Конструктор. \en Constructor. @@ -83,12 +85,12 @@ public: \en Increasing set of parameters. \~ \param[in] vals - \ru Монотонный набор значений. \en Monotonic set of values. \~ - \param[in] valCls - \ru Периодичность набора значений. + \param[in] periodic - \ru Периодичность набора значений. \en Periodicity of the set of values. \~ \return \ru Статус операции. \en Operation status. \~ */ - bool Init ( const c3d::DoubleVector & pars, const c3d::DoubleVector & vals, bool valCls ); + bool Init ( const c3d::DoubleVector & pars, const c3d::DoubleVector & vals, bool periodic ); public: // \ru Общие функции математического объекта \en Common functions of mathematical object virtual MbeFunctionType IsA () const; // \ru Тип элемента \en A type of element @@ -114,12 +116,14 @@ public: virtual double _ThirdDer ( double t ) const; // \ru Третья производная по t \en The third derivative with respect to t // \ru Вычислить значение и производные. \en Calculate value and derivatives of object for given parameter. \~ virtual void Explore( double & t, bool ext, double & val, double & fir, double * sec, double * thr ) const; - - size_t GetListCount() const { return x.size(); } // \ru Количество точек в наборе \en Number of points in a set. - double GetValue(size_t ind ) const { return y[ind]; } // \ru Получить значение по индексу. \en Get value by index. - double GetParam(size_t ind ) const { return x[ind]; } // \ru Получить параметр по индексу. \en Get parameter by index. + // \ru Вычислить аргумент t по значению функции. \en Calculate the argument t by the function value. + virtual double Argument( double & val ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + size_t GetListCount() const { return x.size(); } // \ru Количество точек в наборе \en Number of points in a set. + double GetValue(size_t ind ) const { return y[ind]; } // \ru Получить значение по индексу. \en Get value by index. + double GetParam(size_t ind ) const { return x[ind]; } // \ru Получить параметр по индексу. \en Get parameter by index. + + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step( double t, double sag ) const; virtual double DeviationStep( double t, double angle ) const; @@ -131,7 +135,7 @@ public: virtual bool IsConst() const; virtual bool IsLine () const; - virtual void SetOffsetFunc( double distOld, double distNew ); // \ru Сместить функцию \en Shift a function + virtual void SetOffsetFunc( double off, double scale ); // \ru Сместить функцию \en Shift a function virtual bool SetLimitParam( double, double ); // \ru Установить область изменения параметра \en Set range of parameter virtual void SetLimitValue( size_t n, double); // \ru Установить значение на конце ( 1 - в начале, 2 - в конце) \en Set the value at the end (1 - at start point, 2 - at end point) virtual double GetLimitValue( size_t n ) const; // \ru Дать значение на конце ( 1 - в начале, 2 - в конце) \en Get the value at the end (1 - at start point, 2 - at end point) diff --git a/C3d/Include/func_nurbs_function.h b/C3d/Include/func_nurbs_function.h index 7e13a58..1294b09 100644 --- a/C3d/Include/func_nurbs_function.h +++ b/C3d/Include/func_nurbs_function.h @@ -140,7 +140,7 @@ public: // \ru Вычислить аргумент t по значению функции. \en Calculate the argument t by the function value. virtual double Argument( double & val ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step( double t, double sag ) const; virtual double DeviationStep( double t, double angle ) const; @@ -152,7 +152,7 @@ public: virtual bool IsConst() const; virtual bool IsLine () const; /// \ru Сместить функцию. \en Shift a function. - virtual void SetOffsetFunc( double distOld, double distNew ); + virtual void SetOffsetFunc( double off, double scale ); virtual bool SetLimitParam( double newTMin, double newTMax ); // \ru Установить область изменения параметра \en Set range of parameter virtual void SetLimitValue( size_t n, double newValue ); // \ru Установить значение на конце ( 1 - в начале, 2 - в конце) \en Set the value at the end (1 - at start point, 2 - at end point) diff --git a/C3d/Include/func_power_function.h b/C3d/Include/func_power_function.h index 41a6c87..564dcc1 100644 --- a/C3d/Include/func_power_function.h +++ b/C3d/Include/func_power_function.h @@ -67,7 +67,7 @@ public: virtual void Explore( double & t, bool ext, double & val, double & fir, double * sec, double * thr ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step( double t, double sag ) const; virtual double DeviationStep( double t, double angle ) const; @@ -84,7 +84,7 @@ public: // \ru Разбить функцию точкой с параметром t и вернуть отрезанную часть. \en Function break by the parameter t, and cut off part of the function: begs == true - save the initial half, beg == false - save the final half. virtual MbFunction * BreakFunction( double t, bool beg ); - virtual void SetOffsetFunc( double distOld, double distNew ); // \ru Сместить функцию \en Shift a function + virtual void SetOffsetFunc( double off, double scaleFactor ); // \ru Сместить функцию \en Shift a function bool SetLimit( double newTMin, double newTMax ); // \ru Установить область изменения параметра \en Set range of parameter virtual void SetLimitValue( size_t n, double newValue ); // \ru Установить значение на конце ( 1 - в начале, 2 - в конце) \en Set the value at the end (1 - at beginning, 2 - at ending) virtual double GetLimitValue( size_t n ) const; // \ru Дать значение на конце ( 1 - в начале, 2 - в конце) \en Get the value at the end (1 - at beginning, 2 - at ending) diff --git a/C3d/Include/func_serve_function.h b/C3d/Include/func_serve_function.h index 545f335..742b0c5 100644 --- a/C3d/Include/func_serve_function.h +++ b/C3d/Include/func_serve_function.h @@ -108,7 +108,7 @@ public: // \ru Вычислить аргумент t по значению функции. \en Calculate the argument t by the function value. virtual double Argument( double & val ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step( double t, double sag ) const; virtual double DeviationStep( double t, double angle ) const; @@ -125,7 +125,7 @@ public: // \ru Разбить функцию точкой с параметром t и вернуть отрезанную часть. \en Function break by the parameter t, and cut off part of the function: begs == true - save the initial half, beg == false - save the final half. virtual MbFunction * BreakFunction( double t, bool beg ); - virtual void SetOffsetFunc( double distOld, double distNew ); // \ru Сместить функцию \en Shift a function + virtual void SetOffsetFunc( double off, double scale ); // \ru Сместить функцию \en Shift a function virtual bool SetLimitParam( double newTMin, double newTMax ); // \ru Установить область изменения параметра \en Set range of parameter virtual void SetLimitValue( size_t n, double newValue ); // \ru Установить значение на конце ( 1 - в начале, 2 - в конце) \en Set the value at the end (1 - at beginning, 2 - at ending) virtual double GetLimitValue( size_t n ) const; // \ru Дать значение на конце ( 1 - в начале, 2 - в конце) \en Get the value at the end (1 - at beginning, 2 - at ending) diff --git a/C3d/Include/func_sinus_function.h b/C3d/Include/func_sinus_function.h index d2994f6..5a5e62a 100644 --- a/C3d/Include/func_sinus_function.h +++ b/C3d/Include/func_sinus_function.h @@ -67,7 +67,7 @@ public: virtual void Explore( double & t, bool ext, double & val, double & fir, double * sec, double * thr ) const; - virtual void Inverse( MbRegTransform * iReg = c3d_null ); // \ru Изменить направление \en Change direction + virtual void Inverse( MbRegTransform * iReg = nullptr ); // \ru Изменить направление \en Change direction virtual double Step( double t, double sag ) const; virtual double DeviationStep( double t, double angle ) const; @@ -84,7 +84,7 @@ public: // \ru Разбить функцию точкой с параметром t и вернуть отрезанную часть. \en Function break by the parameter t, and cut off part of the function: begs == true - save the initial half, beg == false - save the final half. virtual MbFunction * BreakFunction( double t, bool beg ); - virtual void SetOffsetFunc( double distOld, double distNew ); // \ru Сместить функцию \en Shift a function + virtual void SetOffsetFunc( double off, double scale ); // \ru Сместить функцию \en Shift a function bool SetLimit( double newTMin, double newTMax ); // \ru Установить область изменения параметра \en Set range of parameter virtual void SetLimitValue( size_t n, double newValue ); // \ru Установить значение на конце ( 1 - в начале, 2 - в конце) \en Set the value at the end (1 - at beginning, 2 - at ending) virtual double GetLimitValue( size_t n ) const; // \ru Дать значение на конце ( 1 - в начале, 2 - в конце) \en Get the value at the end (1 - at beginning, 2 - at ending) diff --git a/C3d/Include/function.h b/C3d/Include/function.h index 942d1d7..1968ddc 100644 --- a/C3d/Include/function.h +++ b/C3d/Include/function.h @@ -132,9 +132,9 @@ public: \param[out] fir - \ru Производная. \en Derivative with respect to t. \~ \param[out] sec - \ru Вторая производная по t, если не ноль. - \en Second derivative with respect to t, if not c3d_null. \~ + \en Second derivative with respect to t, if not nullptr. \~ \param[out] thr - \ru Третья производная по t, если не ноль. - \en Third derivative with respect to t, if not c3d_null. \~ + \en Third derivative with respect to t, if not nullptr. \~ \ingroup Curves_3D */ virtual void Explore( double & t, bool ext, @@ -146,7 +146,7 @@ public: virtual double Argument( double & val ) const; /// \ru Изменить направление. \en Change direction. - virtual void Inverse( MbRegTransform * iReg = c3d_null ) = 0; + virtual void Inverse( MbRegTransform * iReg = nullptr ) = 0; /// \ru Вычислить шаг по прогибу для заданного параметра t. \en Calculate a step by the sag for a given parameter t. virtual double Step( double t, double sag ) const = 0; /// \ru Вычислить шаг по угловому отклонению для заданного параметра t. \en Calculate a step by the angular deviation for a given parameter t. @@ -173,7 +173,7 @@ public: /// \en Function break by the parameters: begs == true - save the initial half, beg == false - save the final half. bool CuttingFunction( SArray & params, bool beginSafe, double eps, RPArray & cutted ); /// \ru Сместить функцию. \en Shift a function. - virtual void SetOffsetFunc( double distOld, double distNew ) = 0; + virtual void SetOffsetFunc( double off, double scale ) = 0; /// \ru Установить область изменения параметра. \en Set the range of parameter. virtual bool SetLimitParam( double newTMin, double newTMax ); /// \ru Установить значение на конце ( 1 - в начале, 2 - в конце). \en Set the value at the end (1 - at start point, 2 - at end point). diff --git a/C3d/Include/gc_api.h b/C3d/Include/gc_api.h index 21b2f2f..242be7a 100644 --- a/C3d/Include/gc_api.h +++ b/C3d/Include/gc_api.h @@ -54,22 +54,6 @@ private: geom_coord(); }; -//---------------------------------------------------------------------------------------- -/* - Deprecated data type. Use GCE_ConstraintStatus instead this. - 2019.07.02 -*/ -//--- -enum GcConState -{ - cst_None, - cst_Satisfied, - cst_Not_Satisfied, - cst_Redundant, - cst_Overconstraining, - cst_Unsolvable, -}; - /** \addtogroup Constraints2D_API \{ @@ -194,14 +178,6 @@ GCE_FUNC( bool ) GCE_InitFrozenCoords( GCE_system gSys ); Deprecated functions */ -//---------------------------------------------------------------------------------------- -// \ru Выдать состояние ограничения \en Get the state of constraint -/* - The call is deprecated (2019). Use GCE_ConstraintStatus instead this. -*/ -//--- -GCE_FUNC(GcConState) GCE_GetConstraintState( GCE_system, constraint_item ); - //---------------------------------------------------------------------------------------- // \ru Собрать плохо-обусловленную часть системы ограничений. \en Collect ill-conditioned part of the constraint system. /* diff --git a/C3d/Include/gce_api.h b/C3d/Include/gce_api.h index c10ee7c..7eca4f5 100644 --- a/C3d/Include/gce_api.h +++ b/C3d/Include/gce_api.h @@ -1327,17 +1327,17 @@ GCE_FUNC(constraint_item) GCE_FixRadius( GCE_system gSys, geom_item circ, coord_ \details \ru Точка фиксации задается через значение параметра, соответствующего ей. \n Порядок фиксируемой производной может равняться 0 (фиксация точки), 1, 2 или 3. \n - Если fixVal равен c3d_null, будет зафиксировано текущее значение производной, + Если fixVal равен nullptr, будет зафиксировано текущее значение производной, иначе фиксируемой производной будет присвоено значение fixVal. \en Fixation point is specified via the parameter value corresponding to it. \n The order of a fixed derivative can be equal 0 (point fixing), 1, 2 or 3. \n - If fixVal is c3d_null current value of the derivative vector will be fixed. + If fixVal is nullptr current value of the derivative vector will be fixed. Otherwise the derivative vector will be fixed at fixVal value. \~ */ //--- GCE_FUNC(constraint_item) GCE_FixSplineDerivative( GCE_system gSys, geom_item spline - , double par, uint derOrder, GCE_vec2d * fixVal = c3d_null ); + , double par, uint derOrder, GCE_vec2d * fixVal = nullptr ); //---------------------------------------------------------------------------------------- /** \brief \ru Задать ограничение "Средняя точка". diff --git a/C3d/Include/gce_geom.h b/C3d/Include/gce_geom.h index c7d41bd..055b0b5 100644 --- a/C3d/Include/gce_geom.h +++ b/C3d/Include/gce_geom.h @@ -46,7 +46,7 @@ enum GcGeomType // --- #define CAST_PTR(T) IfGeom2dPtr // \ru Указатель с функцией приведения типов \en Pointer with function of type conversion #define GEOM_PTR(T) IfGeom2dPtr // \ru Указатель с функцией приведения типов \en Pointer with function of type conversion -#define CAST2PTR(T,arg) (arg) != c3d_null ? (T*)((arg)->GetInterfacingGeom(iidr_ ## T)) : c3d_null // \ru Привести к другому типу \en Convert to another type +#define CAST2PTR(T,arg) (arg) != nullptr ? (T*)((arg)->GetInterfacingGeom(iidr_ ## T)) : nullptr // \ru Привести к другому типу \en Convert to another type ////////////////////////////////////////////////////////////////////////////////////////// // \ru Координата геометрического объекта или переменной \en Coordinate of a geometric object or a variable @@ -256,18 +256,18 @@ class IfGeom2dPtr T * m_pI; public: - IfGeom2dPtr() : m_pI(c3d_null) {} + IfGeom2dPtr() : m_pI(nullptr) {} IfGeom2dPtr( T * pI ): m_pI(pI) {} - IfGeom2dPtr( IfSomethingGeom2d * pI ) : m_pI(c3d_null) { if ( pI != c3d_null ) m_pI = (T*)pI->GetInterfacingGeom(iid); } + IfGeom2dPtr( IfSomethingGeom2d * pI ) : m_pI(nullptr) { if ( pI != nullptr ) m_pI = (T*)pI->GetInterfacingGeom(iid); } IfGeom2dPtr( const IfGeom2dPtr & o ) : m_pI( o.m_pI ) {} public: unsigned int GetIid() const { return iid; } operator T*() const { return m_pI; } - T& operator *() { C3D_ASSERT(m_pI != c3d_null); return *m_pI; } - T** operator &() { C3D_ASSERT(m_pI == c3d_null); return &m_pI; } - T* operator->() { C3D_ASSERT(m_pI != c3d_null); return m_pI; } - T* operator->() const { C3D_ASSERT(m_pI != c3d_null); return m_pI; } + T& operator *() { C3D_ASSERT(m_pI != nullptr); return *m_pI; } + T** operator &() { C3D_ASSERT(m_pI == nullptr); return &m_pI; } + T* operator->() { C3D_ASSERT(m_pI != nullptr); return m_pI; } + T* operator->() const { C3D_ASSERT(m_pI != nullptr); return m_pI; } T* Get() const { return m_pI; } T* operator= ( T* pI ) { m_pI = pI; } T* operator= ( const IfGeom2dPtr & o ) { return operator=(o.m_pI); } @@ -280,8 +280,8 @@ public: template inline T* IfGeom2dPtr::operator = ( IfSomethingGeom2d * pI ) { T * pOld = m_pI; - m_pI = c3d_null; - if ( pI != c3d_null ) + m_pI = nullptr; + if ( pI != nullptr ) m_pI = (T*)pI->GetInterfacingGeom( iid ); return m_pI; diff --git a/C3d/Include/gce_types.h b/C3d/Include/gce_types.h index d46d414..09cdde6 100644 --- a/C3d/Include/gce_types.h +++ b/C3d/Include/gce_types.h @@ -177,7 +177,7 @@ typedef enum // \ru Бинарные геометрические ограничения: "constr( geom1, geom2 )" \en Binary geometric constraints: "constr( geom1, geom2 )" , GCE_COINCIDENT ///< \ru Совпадение пары геометрических объектов. \en Coincidence of a pair of geometric objects. - , GCE_EQUAL_CURVATURE ///< \ru Равенство кривизны кривых в точках. \en Equality of curves curvature in given points. + , GCE_EQUAL_CURVATURE ///< \ru Равенство кривизны кривых в точках. \en Equality of curves curvature in given points. , GCE_EQUAL_LENGTH ///< \ru Равенство длин пары отрезков. \en Equality of two segments lengths. , GCE_EQUAL_RADIUS ///< \ru Равенство радиусов пары окружностей. \en Equality of two circles lengths. , GCE_EQUAL_OFFSET ///< \ru Равенство смещений пары эквидистантных кривых. \en Equality of offset of two equidistant curves. diff --git a/C3d/Include/gcm_api.h b/C3d/Include/gcm_api.h index 5535fdf..f82729f 100644 --- a/C3d/Include/gcm_api.h +++ b/C3d/Include/gcm_api.h @@ -684,7 +684,7 @@ GCM_FUNC(GCM_pattern) GCM_AddCoordSystemPattern( GCM_system gSys, GCM_geom sampl \en Descriptor of the created constraint which has a type GCM_PATTERN_COORDINATE. \~ */ // --- -GCM_FUNC(GCM_pattern) GCM_AddPatternCoordinate( GCM_system gSys, GCM_pattern csPattern, GCM_coord_name crd, GCM_geom controlObj ); +GCM_FUNC(GCM_pattern) GCM_SubPattern( GCM_system gSys, GCM_pattern csPattern, GCM_coord_name crd, GCM_geom controlObj ); //---------------------------------------------------------------------------------------- /** \brief \ru Добавить геометрический объект в паттерн. diff --git a/C3d/Include/gcm_constraint.h b/C3d/Include/gcm_constraint.h index e3c49b0..5e17711 100644 --- a/C3d/Include/gcm_constraint.h +++ b/C3d/Include/gcm_constraint.h @@ -30,7 +30,7 @@ struct GCM_geom_axis ItGeomPtr geomPtr; ///< \ru Тело, которому принадлежит ось планарного угла. \en solid the axis of a planar angle belongs to. GCM_geom_axis() : axis( MbVector3D::zero ) - , geomPtr( c3d_null ) {} + , geomPtr( nullptr ) {} }; //---------------------------------------------------------------------------------------- @@ -133,7 +133,7 @@ public: /* \en Callback function which defines a law of positioning of the first geometric object which is dependent on positions of other objects. */ - virtual GCM_dependent_func Function() const { return c3d_null; } + virtual GCM_dependent_func Function() const { return nullptr; } virtual GCM_extra_param ExtraParam() const { return GCM_extra_param(); } public: /* @@ -315,7 +315,7 @@ inline void ItConstraintItem::GetParams( GCM_c_params & pars ) const //--- inline ItGeomPtr ItConstraintItem::DependentGeom() const { - return (ConstraintType() == GCM_DEPENDENT) ? GeomItem(1) : c3d_null; + return (ConstraintType() == GCM_DEPENDENT) ? GeomItem(1) : nullptr; } //---------------------------------------------------------------------------------------- @@ -480,7 +480,7 @@ GCM_FUNC(void) PrevSolution( GCM_alignment & ); //--- inline ItGeomPtr ItConstraintItem::_GArg( int geomN ) const { - return size_t(geomN-1) < m_args.size() ? m_args[geomN-1] : ItGeomPtr( c3d_null ); + return size_t(geomN-1) < m_args.size() ? m_args[geomN-1] : ItGeomPtr( nullptr ); } //---------------------------------------------------------------------------------------- diff --git a/C3d/Include/gcm_geom.h b/C3d/Include/gcm_geom.h index 7c70d77..9f1c842 100644 --- a/C3d/Include/gcm_geom.h +++ b/C3d/Include/gcm_geom.h @@ -130,12 +130,12 @@ class MtParGeom; class GCM_CLASS MtGeomVariant { public: - MtGeomVariant() : m_value( c3d_null ) {} + MtGeomVariant() : m_value( nullptr ) {} MtGeomVariant( const MbCartPoint3D & ); MtGeomVariant( const MtGeomVariant & ); - MtGeomVariant( const MtParGeom & g ) : m_value( c3d_null ) { Assign(g); } + MtGeomVariant( const MtParGeom & g ) : m_value( nullptr ) { Assign(g); } MtGeomVariant( const GCM_g_type ); - MtGeomVariant( MtParGeom & g ) : m_value( c3d_null ) { Share(g); } + MtGeomVariant( MtParGeom & g ) : m_value( nullptr ) { Share(g); } MtGeomVariant & operator = ( const MtGeomVariant & gVar ) { return Assign( gVar ); } ~MtGeomVariant(); @@ -230,9 +230,9 @@ private: public: MtMatingGeometry() - : myGeom( c3d_null ) + : myGeom( nullptr ) , myOrientation( Unoriented ) - , myLCSMatrix( c3d_null ) + , myLCSMatrix( nullptr ) {} ~MtMatingGeometry() { @@ -244,7 +244,7 @@ public: MtGeomType GetGeomType() const { return myGeomType; } /// \ru Выдать ориентацию; \en Get orientation; Orient GetOrientation() const { return myOrientation; } - /// \ru Выдать геометрический объект сопряжения. Если =c3d_null, то это точка, заданная MtMatingGeometry::myMatingPoint; \en Get geometric object of the mating. If =c3d_null, then this is a point specified by MtMatingGeometry::myMatingPoint; + /// \ru Выдать геометрический объект сопряжения. Если =nullptr, то это точка, заданная MtMatingGeometry::myMatingPoint; \en Get geometric object of the mating. If =nullptr, then this is a point specified by MtMatingGeometry::myMatingPoint; const MbSpaceItem * GetMatingGeom() const { return myGeom; } /// \ru Выдать матрицу ЛСК, в которой задан геометрический объект сопряжения \en Get matrix of LCS in which the geometric object of the mating is specified const MbMatrix3D & LCSMatrix() const; @@ -314,7 +314,7 @@ private: // \ru Реализовать при необходимости \en Imp //--- inline const MbMatrix3D & MtMatingGeometry::LCSMatrix() const { - if ( myLCSMatrix != c3d_null ) + if ( myLCSMatrix != nullptr ) return *myLCSMatrix; return MbMatrix3D::identity; } @@ -371,7 +371,7 @@ inline void MtMatingGeometry::SetAsMarker( const MbCartPoint3D & org, const MbVe inline void MtMatingGeometry::SetAsLCS( const MbPlacement3D & lcs ) { myGeomType = GCM_LCS; - myGeom = c3d_null; // new MbMarker( MbCartPoint::origin, MbVector3D::zAxis, MbVector3D::xAxis ); + myGeom = nullptr; // new MbMarker( MbCartPoint::origin, MbVector3D::zAxis, MbVector3D::xAxis ); myOrientation = Unoriented; _SetLCSMatrix( lcs.GetMatrixFrom() ); } @@ -397,11 +397,11 @@ inline void MtMatingGeometry::SetAsMatingGeomItem( SPtr gIte //--- inline void MtMatingGeometry::_ClearMatrix() { - if ( myLCSMatrix != c3d_null ) + if ( myLCSMatrix != nullptr ) { delete myLCSMatrix; } - myLCSMatrix = c3d_null; + myLCSMatrix = nullptr; } //---------------------------------------------------------------------------------------- @@ -415,7 +415,7 @@ inline void MtMatingGeometry::_SetLCSMatrix( const MbMatrix3D & gSpan ) } else { - if ( myLCSMatrix == c3d_null ) + if ( myLCSMatrix == nullptr ) myLCSMatrix = new MbMatrix3D( gSpan ); else *myLCSMatrix = gSpan; @@ -428,7 +428,7 @@ inline void MtMatingGeometry::_SetLCSMatrix( const MbMatrix3D & gSpan ) inline void MtMatingGeometry::SetNull() { myGeomType = GCM_NULL_GTYPE; - myGeom = c3d_null; + myGeom = nullptr; myOrientation = Unoriented; _ClearMatrix(); } diff --git a/C3d/Include/gcm_manager.h b/C3d/Include/gcm_manager.h index 13df89e..b66a4de 100644 --- a/C3d/Include/gcm_manager.h +++ b/C3d/Include/gcm_manager.h @@ -328,7 +328,7 @@ public: /// \ru Добавить паттерн. \en Add a pattern. MtPatternId AddPattern( MtMateType, MtArgument, MtArgument, MtParVariant par=MtParVariant::undef ); /// \ru \ru Задать координату паттерна - Система Координат. \en Create the constraint coordinate of the coordinate system pattern. - MtPatternId AddPatternCoordinate( MtPatternId ptrn, GCM_coord_name, MtArgument axis ); + MtPatternId SubPattern( MtPatternId ptrn, GCM_coord_name, MtArgument axis ); /// \ru Добавить геометрический объект в паттерн. \en Add a geometric object to the pattern. MtConstraintId AddGeomToPattern( MtPatternId ptrn, MtArgument ptrnObj, MtParVariant par1 = MtParVariant::undef, MtParVariant par2 = MtParVariant::undef, GCM_scale scale=GCM_RIGID ); diff --git a/C3d/Include/graph_algorithms.h b/C3d/Include/graph_algorithms.h index 6e2d11d..8e2482b 100644 --- a/C3d/Include/graph_algorithms.h +++ b/C3d/Include/graph_algorithms.h @@ -112,7 +112,7 @@ public: static const typename Graph::vertex_index NO_VERTEX = (size_t)-1; BicompDFSVisitor( BicompVisitor & vis ) - : m_graph( c3d_null ) + : m_graph( nullptr ) , m_bicompVis( vis ) , m_dfsCounter( 1 ) , num() diff --git a/C3d/Include/instance.h b/C3d/Include/instance.h index 4534f19..76cb334 100644 --- a/C3d/Include/instance.h +++ b/C3d/Include/instance.h @@ -68,10 +68,10 @@ public : // \ru Общие функции геометрического объекта. \en Common functions of a geometric object. virtual MbeSpaceType IsA() const; // \ru Тип объекта. \en An object type. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * iReg = c3d_null ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * iReg = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * iReg = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate about an axis. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * iReg = nullptr ) const; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * iReg = nullptr ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * iReg = nullptr ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * iReg = nullptr ); // \ru Повернуть вокруг оси. \en Rotate about an axis. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными? \en Whether the objects are equal? virtual bool IsSimilar( const MbSpaceItem & init ) const; // \ru Являются ли объекты подобными? \en Whether the objects are similar? virtual bool SetEqual ( const MbSpaceItem & init ); // \ru Сделать объекты равными. \en Make the objects equal. @@ -124,11 +124,11 @@ public : virtual const MbItem * GetItemByName( SimpleName n, MbPath & path, MbMatrix3D & from ) const; // \ru Преобразовать согласно матрице c использованием регистратора содержимый объект, если он селектирован. \en Transform the contained object according to the matrix using the registrator if the object selected. - virtual void TransformSelected( const MbMatrix3D & matr, MbRegTransform * iReg = c3d_null ); + virtual void TransformSelected( const MbMatrix3D & matr, MbRegTransform * iReg = nullptr ); // \ru Сдвинуть вдоль вектора с использованием регистратора содержимый объект, если он селектирован. \en Translate the contained object along the vector according to the matrix using the registrator if the object selected. - virtual void MoveSelected( const MbVector3D & to, MbRegTransform * iReg = c3d_null ); + virtual void MoveSelected( const MbVector3D & to, MbRegTransform * iReg = nullptr ); // \ru Повернуть вокруг оси на заданный угол с использованием регистратора содержимый объект, если он селектирован. \en Translate the contained object about the axis according to the matrix using the registrator if the object selected. - virtual void RotateSelected( const MbAxis3D & axis, double angle, MbRegTransform * iReg = c3d_null ); + virtual void RotateSelected( const MbAxis3D & axis, double angle, MbRegTransform * iReg = nullptr ); /// \ru Дать матрицу преобразования из локальной системы объекта. \en Get transform matrix from local coordinate system of object. virtual bool GetMatrixFrom( MbMatrix3D & from ) const; diff --git a/C3d/Include/io_buffer.h b/C3d/Include/io_buffer.h index 119654c..76c6367 100644 --- a/C3d/Include/io_buffer.h +++ b/C3d/Include/io_buffer.h @@ -597,22 +597,22 @@ public: /// \ru Установить для записи FileSpace с заданным индексом (при необходимости создать новый). ///\en Set FileSpace with given index for writing (create if necessary). - virtual FileSpace * enterFileSpace ( uint8 ) { return c3d_null; } // не реализовано; not implemeneted + virtual FileSpace * enterFileSpace ( uint8 ) { return nullptr; } // не реализовано; not implemeneted /// \ru Установить позицию для записи/чтения по заданному ClusterReference. /// Сохранить предыдущую позицию, если saveCurr = true. /// \en Set position for for writing/reading by given ClusterReference. /// If saveCurr = true, save previous position. - virtual FileSpace * enterFileSpace ( const ClusterReference & , bool ) { return c3d_null; } // не реализовано; not implemeneted + virtual FileSpace * enterFileSpace ( const ClusterReference & , bool ) { return nullptr; } // не реализовано; not implemeneted /// \ru Установить позицию для записи/чтения по заданным FileSpace и ClusterReference. /// Внимание, здесь ClusterReference.clusterIndex должен содержать индекс в массиве индексов кластеров в FileSpace! /// Сохранить предыдущую позицию, если saveCurr = true. /// \en Set position for writing/reading by given FileSpace and ClusterReference. /// Warning: in this function, ClusterReference.clusterIndex should contain an index in array of cluster indices in FileSpace! /// If saveCurr = true, save previous position. - virtual FileSpace * enterFileSpace ( const ClusterReference &, FileSpace *, bool ) { return c3d_null; } // не реализовано; not implemeneted + virtual FileSpace * enterFileSpace ( const ClusterReference &, FileSpace *, bool ) { return nullptr; } // не реализовано; not implemeneted /// \ru Установить предыдущий FileSpace для записи/чтения. ///\en Set previous FileSpace for writing/reading. - virtual FileSpace * returnToPreviousFileSpace() { return c3d_null; } // не реализовано; not implemeneted + virtual FileSpace * returnToPreviousFileSpace() { return nullptr; } // не реализовано; not implemeneted /// \ru Получить текущую позицию в буфере. \en Get current position in the buffer. ClusterReference getCurrentClusterPos(); diff --git a/C3d/Include/io_memory_buffer.h b/C3d/Include/io_memory_buffer.h index 2f3af0a..9ddd292 100644 --- a/C3d/Include/io_memory_buffer.h +++ b/C3d/Include/io_memory_buffer.h @@ -61,7 +61,7 @@ protected: ClusterReference _ref; FileSpace * _file; - FileStackEntry() : _file(c3d_null) {} + FileStackEntry() : _file(nullptr) {} FileStackEntry ( ClusterReference r, FileSpace * f ) : _ref(r), _file(f) {} }; std::stack filesStack; @@ -84,18 +84,18 @@ public: bool isEmpty() const; /// \ru Записать в непрерывную память. /// Функция подразумевает вполне определенное толкование значений входных данных, поэтому она не должна вызываться с неинициализированными аргументами. - /// \param[in,out] memory - память, куда писать. Если memory == c3d_null, то память выделяется. + /// \param[in,out] memory - память, куда писать. Если memory == nullptr, то память выделяется. /// \param[in] addSize - размер памяти, которую надо дополнительно выделить при выделении памяти. /// Смысл addSize зависит от начального значения параметра memory: - /// если memory != c3d_null (т.е.память уже распределена), то addSize должен быть равен размеру памяти (addSize >= getMemLen() !!!). - /// если memory == c3d_null, то addSize определяет, столько байт дополнительно добавить (обнулив) в начале при выделении памяти. + /// если memory != nullptr (т.е.память уже распределена), то addSize должен быть равен размеру памяти (addSize >= getMemLen() !!!). + /// если memory == nullptr, то addSize определяет, столько байт дополнительно добавить (обнулив) в начале при выделении памяти. /// \en Write to contiguous memory. /// The function implies a well-defined interpretation of the input values, so it should not be called with uninitialized arguments. - /// \param[in,out] memory - memory to write to. If memory == c3d_null, then memory is allocated. + /// \param[in,out] memory - memory to write to. If memory == nullptr, then memory is allocated. /// \param[in] addSize - size of memory, which should be allocated additionally when allocating memory. /// The meaning of addSize depends on the initial value of the parameter 'memory': - /// if memory != c3d_null (i.e. the memory is already allocated), then addSize should be equal to memory size (addSize >= getMemLen() !!!). - /// if memory == c3d_null, then addSize defines a number of bytes to be added (and zeroed) at the beginning when allocating memory. + /// if memory != nullptr (i.e. the memory is already allocated), then addSize should be equal to memory size (addSize >= getMemLen() !!!). + /// if memory == nullptr, then addSize defines a number of bytes to be added (and zeroed) at the beginning when allocating memory. size_t toMemory( const char *& memory, size_t addSize = 0 ) const; /// \ru Прочитать из непрерывной памяти. \en Read from the contiguous memory. bool fromMemory( const char * memory ); diff --git a/C3d/Include/io_tape.h b/C3d/Include/io_tape.h index 82db405..d503994 100644 --- a/C3d/Include/io_tape.h +++ b/C3d/Include/io_tape.h @@ -470,7 +470,7 @@ public: size_t Add( const TapeBase * e ); /// \ru Выдать указатель на зарегистрированный объект по заданной позиции в кластере. \en Get the pointer of the registered object by the position in the cluster. - virtual TapeBase * Get( const ClusterReference & ) const { return c3d_null; } // unsupported + virtual TapeBase * Get( const ClusterReference & ) const { return nullptr; } // unsupported /// \ru Выдать позицию в кластере по заданному индексу. \en Get position in the cluster by given index. virtual ClusterReference GetClusterRef( size_t ) const { return ClusterReference(); } // unsupported /// \ru Добавить позицию объекта в кластере. \en Add the object position in the cluster. @@ -700,7 +700,7 @@ private: // --- class MATH_CLASS reader : public virtual tape { public: - typedef std_unique_ptr reader_ptr; + typedef std::unique_ptr reader_ptr; protected: /// \ru Конструктор. \en Constructor. reader( iobuf_Seq & buf, bool ownbuf, bool openSys, uint16 om, TapeRegistrator * reg ); @@ -722,7 +722,7 @@ public: public: /// \ru Создать читатель для последовательного буфера. \en Create reader for iobuf_Seq. - static reader_ptr CreateReader ( std_unique_ptr buf, uint16 om ); + static reader_ptr CreateReader ( std::unique_ptr buf, uint16 om ); /// \ru Создать читатель для буфера в памяти. \en Create reader for membuf. static reader_ptr CreateMemReader ( membuf & sb, uint8 om ); @@ -736,7 +736,7 @@ public: /// \ru Читать каталог объектов. \en Read the object catalog. virtual void ReadObjectCatalog(); /// \ru Читать объект по позиции в кластере. \en Read an object by position in cluster. - virtual TapeBase * ReadObjectByPosition ( const ClusterReference & ) { return c3d_null; } + virtual TapeBase * ReadObjectByPosition ( const ClusterReference & ) { return nullptr; } /// \ru Установить позицию чтения. \en Set reading position. virtual bool SetReadPosition ( ClusterReference & ) { return false; } // not supported @@ -754,7 +754,7 @@ public: virtual bool readBytes( void * bf, size_t len ); /// \ru Получить указатель на дерево модели. \en Get pointer to the model tree. - virtual const c3d::IModelTree * GetModelTree() const { return c3d_null; } // not supported + virtual const c3d::IModelTree * GetModelTree() const { return nullptr; } // not supported /// \ru Получить признак полного чтения текущего объекта. \en Get indicator of full reading of the current object. /// \ru Установить признак полного чтения текущего объекта. \en Set indicator of full reading of the current object. @@ -820,7 +820,7 @@ private: // --- class MATH_CLASS reader_ex : public reader { - std_unique_ptr m_tree; + std::unique_ptr m_tree; uint32 m_lastError; bool m_fullRead; protected: @@ -838,10 +838,10 @@ public: public: /// \ru Создать экземпляр reader_ex для последовательного буфера. \en Create reader_ex instance for sequential buffer. - static std_unique_ptr CreateReaderEx( std_unique_ptr buf, uint16 om ); + static std::unique_ptr CreateReaderEx( std::unique_ptr buf, uint16 om ); /// \ru Создать читатель для буфера в памяти. \en Create reader for membuf. - static std_unique_ptr CreateMemReaderEx ( membuf & sb, uint8 om ); + static std::unique_ptr CreateMemReaderEx ( membuf & sb, uint8 om ); public: @@ -891,7 +891,7 @@ private: // --- class MATH_CLASS writer : public virtual tape { public: - typedef std_unique_ptr writer_ptr; + typedef std::unique_ptr writer_ptr; protected: /// \ru Конструктор. \en Constructor. writer ( iobuf_Seq & buf, bool ownBuf, bool openSys, uint16 om, TapeRegistrator * reg ); @@ -910,7 +910,7 @@ public: public: /// \ru Создать писатель для последовательного буфера. \en Create writer for iobuf_Seq. - static writer_ptr CreateWriter( std_unique_ptr buf, uint16 om ); + static writer_ptr CreateWriter( std::unique_ptr buf, uint16 om ); /// \ru Создать писатель для буфера в памяти. \en Create writer for membuf. static writer_ptr CreateMemWriter( membuf & sb, uint8 om ); @@ -946,7 +946,7 @@ public: size_t __lenWchar( const TCHAR * s ); /// \ru Получить указатель на дерево модели. \en Get pointer to the model tree. - virtual const c3d::IModelTree * GetModelTree() const { return c3d_null; } // not supported + virtual const c3d::IModelTree * GetModelTree() const { return nullptr; } // not supported protected: /// \ru Записать объект и тип. \en Write the object and type. @@ -977,7 +977,7 @@ private: // --- class MATH_CLASS writer_ex : public writer { - std_unique_ptr m_tree; + std::unique_ptr m_tree; ClusterReference m_catalogRef; protected: /// \ru Конструктор. \en Constructor. @@ -994,10 +994,10 @@ public: public: /// \ru Создать писатель для последовательного буфера. \en Create writer for iobuf_Seq. - static std_unique_ptr CreateWriterEx( std_unique_ptr buf, uint16 om ); + static std::unique_ptr CreateWriterEx( std::unique_ptr buf, uint16 om ); /// \ru Создать писатель для буфера в памяти. \en Create writer for membuf. - static std_unique_ptr CreateMemWriterEx( membuf & sb, uint8 om ); + static std::unique_ptr CreateMemWriterEx( membuf & sb, uint8 om ); public: /// \ru Записать дерево модели. \en Write the model tree. @@ -1035,7 +1035,7 @@ private: // --- class MATH_CLASS rw : public writer, public reader { public: - typedef std_unique_ptr rw_ptr; + typedef std::unique_ptr rw_ptr; public: /// \ru Конструктор. \en Constructor. \~ \deprecated \ru Метод устарел. \en The method is deprecated. DEPRECATE_DECLARE rw( membuf & sb, uint8 om ); @@ -1124,7 +1124,7 @@ struct TapeClassContainer static bool Add( TapeClass & tapeClass ) { if ( !StaticTapeClassContainer() ) - StaticTapeClassContainer() = new SFDPArray( 430, 1, TapeClass_Compare, c3d_null ); // \ru не владеет \en doesn't own + StaticTapeClassContainer() = new SFDPArray( 430, 1, TapeClass_Compare, nullptr ); // \ru не владеет \en doesn't own return StaticTapeClassContainer()->AddExact( tapeClass ); } @@ -1982,7 +1982,7 @@ inline uint16 hash( const char * name ) // --- inline reader & __readChar( reader & ps, char *& s ) { - s = c3d_null; + s = nullptr; if ( ps.good() ) { @@ -1994,7 +1994,7 @@ inline reader & __readChar( reader & ps, char *& s ) (len > 0 && ps.eof()) || !ps.good() ) { - s = c3d_null; + s = nullptr; } else // good { @@ -2010,7 +2010,7 @@ inline reader & __readChar( reader & ps, char *& s ) { // \ru прочли не все, скорее всего ошибка - очистить строку \en not everything has been read, must be an error - clear the string delete [] s; - s = c3d_null; + s = nullptr; } } else @@ -2030,7 +2030,7 @@ inline reader & __readChar( reader & ps, char *& s ) // --- inline reader & __readWchar( reader & ps, TCHAR * & s ) { - s = c3d_null; // \ru на случай, если ничего не прочитаем \en for case if nothing will be read + s = nullptr; // \ru на случай, если ничего не прочитаем \en for case if nothing will be read if ( ps.good() ) { uint32 len = 0; @@ -2048,7 +2048,7 @@ inline reader & __readWchar( reader & ps, TCHAR * & s ) else { // \ru прочли не все, скорее всего ошибка - очистить строку \en not everything has been read, must be an error - clear the string delete [] readBuf; - readBuf = c3d_null; + readBuf = nullptr; } if ( readBuf ) { // is OK @@ -2085,7 +2085,7 @@ inline reader & __readWchar( reader & ps, TCHAR * & s ) // --- inline reader & __readWcharT( reader & ps, wchar_t * & s ) { - s = c3d_null; // \ru на случай, если ничего не прочитаем \en for case if nothing will be read + s = nullptr; // \ru на случай, если ничего не прочитаем \en for case if nothing will be read if ( ps.good() ) { uint32 len = 0; @@ -2103,7 +2103,7 @@ inline reader & __readWcharT( reader & ps, wchar_t * & s ) else { // \ru прочли не все, скорее всего ошибка - очистить строку \en not everything has been read, must be an error - clear the string delete [] readBuf; - readBuf = c3d_null; + readBuf = nullptr; } if ( readBuf ) { // is OK @@ -2489,6 +2489,7 @@ inline reader & operator >> ( reader & ps, unsigned short & sh ) } //#ifdef __MOBILE_VERSION__ +#ifndef __ATS_BUILD__ // Нужно для сборки решения Tools\ATS... //---------------------------------------------------------------------------------------- /// \ru Чтение wchar_t в поток. \en Reading wchar_t to the stream. \~ \ingroup Base_Tools_IO // --- @@ -2504,6 +2505,7 @@ inline reader & operator >> ( reader & ps, wchar_t & sh ) return ps; } +#endif // __ATS_BUILD__ //#endif // __MOBILE_VERSION__ @@ -2556,7 +2558,7 @@ inline reader & operator >> ( reader & ps, long double & l ) { template inline reader & operator >> ( reader & ps, SPtr<_Class> & sPtr ) { - _Class * ptr = c3d_null; + _Class * ptr = nullptr; ps >> ptr; sPtr.assign( ptr ); return ps; @@ -2623,6 +2625,7 @@ inline writer& operator << ( writer& ps, unsigned short sh ) } //#ifdef __MOBILE_VERSION__ +#ifndef __ATS_BUILD__ // Нужно для сборки решения Tools\ATS... //---------------------------------------------------------------------------------------- /// \ru Запись wchar_t в поток. \en Write wchar_t to the stream. \~ \ingroup Base_Tools_IO // --- @@ -2632,6 +2635,7 @@ inline writer & operator << ( writer & ps, wchar_t sh ) ps.writeBytes( &sh, size ); return ps; } +#endif // __ATS_BUILD__ //#endif // __MOBILE_VERSION__ @@ -2691,7 +2695,7 @@ inline void ReadTCHAR( reader & in, TCHAR *& ts, bool directSingleByte = false ) if ( directSingleByte || in.MathVersion() < UNICODE_VERSION ) { // \ru читаем WCHAR* из CHAR* \en read WCHAR* from CHAR* - char * s = c3d_null; + char * s = nullptr; __readChar( in, s ); // \ru читаем строку в формате ANSI \en read string in ANSI format ts = _strNtcs( s ); // \ru создаем TCHAR из ANSI (если TCHAR == char, то просто дублируем) \en create TCHAR from ANSI (if TCHAR == char, then simply duplicate) delete [] s; @@ -2965,7 +2969,6 @@ inline size_t ReadCOUNT ( void * in, VERSION version ) MATH_FUNC (ClassDescriptor) GetPackedClassName( const ClassDescriptor &, const VersionContainer & ver ); -#ifdef C3D_STANDARD_CXX_11_PARTIAL //---------------------------------------------------------------------------------------- /** Добавить новое соответствие значения хэша записанного в поток упакованному имени класса @@ -2977,7 +2980,6 @@ MATH_FUNC (ClassDescriptor) GetPackedClassName( const ClassDescriptor &, const V */ // --- MATH_FUNC (void) AddPackedClassNameForVersion( const ClassDescriptor & newClassName, const ClassDescriptor & oldClassName, uint appIndex, VERSION lowVersion, VERSION highVersion ); -#endif // C3D_STANDARD_CXX_11_PARTIAL //---------------------------------------------------------------------------------------- @@ -3097,7 +3099,7 @@ inline reader & operator >> ( reader & ps, std::string & s ) { if ( ps.MathVersion() < UNICODE_VERSION ) { - char * str( c3d_null ); + char * str( nullptr ); __readChar( ps, str ); // \ru читаем строку в формате ANSI \en read string in ANSI format if ( str ) s = str; @@ -3105,7 +3107,7 @@ inline reader & operator >> ( reader & ps, std::string & s ) s.clear(); delete [] str; } else { - wchar_t * p (c3d_null); + wchar_t * p (nullptr); ReadWcharT( ps, p ); // \ru в зависимости от версии потока \en subject to the stream version if ( p ) { char* str = wcsnewmbs(p); @@ -3148,7 +3150,7 @@ inline reader & operator >> ( reader & ps, std::wstring & s ) { if ( ps.MathVersion() < UNICODE_VERSION ) { - char * str( c3d_null ); + char * str( nullptr ); __readChar( ps, str ); // \ru читаем строку в формате ANSI \en read string in ANSI format wchar_t* p = mbsnewwcs( str ); if ( p ) @@ -3158,7 +3160,7 @@ inline reader & operator >> ( reader & ps, std::wstring & s ) delete [] p; delete [] str; } else { - wchar_t * p = c3d_null; + wchar_t * p = nullptr; ReadWcharT( ps, p ); // \ru в зависимости от версии потока \en subject to the stream version if ( p ) s = p; @@ -3175,7 +3177,7 @@ inline reader & operator >> ( reader & ps, std::wstring & s ) //--- inline writer & operator << ( writer & ps, const std::wstring * s ) { - WriteWcharT( ps, (s ? s->c_str() : c3d_null) ); // \ru в зависимости от версии потока \en subject to the stream version + WriteWcharT( ps, (s ? s->c_str() : nullptr) ); // \ru в зависимости от версии потока \en subject to the stream version return ps; } diff --git a/C3d/Include/io_tree.h b/C3d/Include/io_tree.h index e2967e3..33eab58 100644 --- a/C3d/Include/io_tree.h +++ b/C3d/Include/io_tree.h @@ -153,7 +153,7 @@ protected: public: - IModelTree() : m_type ( mtt_Model ), m_nodeToAddFunc( c3d_null ), m_filterFunc( c3d_null ) {} + IModelTree() : m_type ( mtt_Model ), m_nodeToAddFunc( nullptr ), m_filterFunc( nullptr ) {} virtual ~IModelTree() {} // \ru Выдать тип дерева. \en Get the tree type. @@ -163,14 +163,14 @@ public: // \ru Построить дерево из узлов, выбранных по фильтрам. В случае дерева исполнений, функция работает с первым исполнением. // \en Build a tree with nodes, selected by filters. In case of embodiment tree, the function works with the first embodiment. - virtual std_unique_ptr GetFilteredTree ( const std::vector& filters ) const = 0; + virtual std::unique_ptr GetFilteredTree ( const std::vector& filters ) const = 0; - // \ru Построить дерево по заданным узлам. Не применимо к дереву исполнений (в этом случае возвращает c3d_null). - // \en Build a tree for given nodes. Not applicable to embodiment tree (in this case, returns c3d_null). - virtual std_unique_ptr GetFilteredTree ( std::vector& nodes ) const = 0; + // \ru Построить дерево по заданным узлам. Не применимо к дереву исполнений (в этом случае возвращает nullptr). + // \en Build a tree for given nodes. Not applicable to embodiment tree (in this case, returns nullptr). + virtual std::unique_ptr GetFilteredTree ( std::vector& nodes ) const = 0; - // \ru Выдать указатель на дерево исполнений. Выдает c3d_null, если не применимо (нет исполнений). - // \en Get pointer to embodiments tree. Return c3d_null if not applicable (no embodiments). + // \ru Выдать указатель на дерево исполнений. Выдает nullptr, если не применимо (нет исполнений). + // \en Get pointer to embodiments tree. Return nullptr if not applicable (no embodiments). virtual const IEmbodimentTree* GetEmbodimentsTree() const = 0; // \ru Добавить узел. \en Add a node. @@ -209,7 +209,7 @@ public: // \ru Построить поддерево из потомков заданного узла. // \en Build a tree from children of a given node. - static std_unique_ptr GetSubtree ( const IModelTreeNode* node ); + static std::unique_ptr GetSubtree ( const IModelTreeNode* node ); // \ru Получить значимые узлы поддерева с указанным корнем (исключив узлы, которые добавлены для восстановления иерархии дерева). // Возвращает количество значимых узлов. @@ -244,12 +244,12 @@ public: IEmbodimentNode() {} virtual ~IEmbodimentNode() { for ( std::set::iterator i = m_children.begin(); i != m_children.end(); ++i ) - if ( *i != c3d_null ) delete *i; + if ( *i != nullptr ) delete *i; } // \ru Построить поддерево модели, содержащееся в данном исполнении. // \en Build a subtree of a model tree which is contained in a given embodiment. - virtual std_unique_ptr GetEmbodiment() const = 0; + virtual std::unique_ptr GetEmbodiment() const = 0; // \ru Выдать узел дерева модели, соответствующий данному исполнению. // \en Get a model tree node which corresponds to a given embodiment. diff --git a/C3d/Include/item_registrator.h b/C3d/Include/item_registrator.h index fa1260b..6f1c06b 100644 --- a/C3d/Include/item_registrator.h +++ b/C3d/Include/item_registrator.h @@ -29,10 +29,10 @@ class MATH_CLASS MbRefItem; */ // --- #define __REG_DUPLICATE_IMPL( __CLASS ) \ -MbRefItem * copyItem = c3d_null; \ -if ( iReg == c3d_null || !iReg->IsReg( this, copyItem ) ) { \ +MbRefItem * copyItem = nullptr; \ +if ( iReg == nullptr || !iReg->IsReg( this, copyItem ) ) { \ copyItem = new __CLASS; \ - if ( iReg != c3d_null ) \ + if ( iReg != nullptr ) \ iReg->SetReg( this, copyItem ); \ } diff --git a/C3d/Include/legend.h b/C3d/Include/legend.h index 136f13a..e173802 100644 --- a/C3d/Include/legend.h +++ b/C3d/Include/legend.h @@ -38,10 +38,10 @@ public: /* \ru Общие функции геометрического объе virtual MbeSpaceType IsA() const = 0; // \ru Тип объекта. \en Type of the object. virtual MbeSpaceType Type() const = 0; // \ru Тип объекта. \en Type of the object. virtual MbeSpaceType Family() const; // \ru Семейство элемента. \en Family of the element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ) = 0; // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ) = 0; // \ru Сдвинуть вдоль вектора. \en Translate along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ) = 0; // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ) = 0; // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ) = 0; // \ru Сдвинуть вдоль вектора. \en Translate along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ) = 0; // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const = 0; // \ru Являются ли объекты равными? \en Determine whether the objects are equal. virtual bool IsSimilar( const MbSpaceItem & init ) const = 0; // \ru Являются ли объекты подобными? \en Determine whether the objects are similar. virtual bool SetEqual ( const MbSpaceItem & init ) = 0; // \ru Сделать объекты равным. \en Make the objects equal. diff --git a/C3d/Include/lump.h b/C3d/Include/lump.h index a803bc2..b6e06bd 100644 --- a/C3d/Include/lump.h +++ b/C3d/Include/lump.h @@ -67,7 +67,7 @@ typedef std::pair ConstLumpsSPtrSetRet; // --- struct MATH_CLASS MbLump: public MbRefItem { protected: - c3d::ConstSolidSPtr solid; ///< \ru Тело (всегда не c3d_null). \en Solid (always not c3d_null). + c3d::ConstSolidSPtr solid; ///< \ru Тело (всегда не nullptr). \en Solid (always not nullptr). MbMatrix3D from; ///< \ru Матрица преобразования из локальной системы координат. \en A transformation matrix from the local coordinate system. uint component; ///< \ru Идентификатор компонента, в котором определено тело. \en An identifier of a component which a solid is defined in. size_t identifier; ///< \ru Идентификатор нити. \en A thread identifier. @@ -79,7 +79,7 @@ private: MbLump( const MbLump & other, MbRegDuplicate * iReg ); public: /// \ru Пустой конструктор. \en Empty constructor. - MbLump() : solid( c3d_null ), from(), component( 0 ), identifier( SYS_MAX_T ), changed( true ) {} + MbLump() : solid( nullptr ), from(), component( 0 ), identifier( SYS_MAX_T ), changed( true ) {} /// \ru Конструктор по данным. \en Constructor by data. MbLump( const MbSolid & _solid, const MbMatrix3D & _from, uint _comp = 0, size_t _ident = SYS_MAX_T, bool _changed = true ); /// \ru Деструктор. \en Destructor. @@ -96,7 +96,7 @@ public: /// \ru Разрезать тело в производном виде. \en Cut solid on derive view. virtual bool WillCutOnDeriveView() const { return true; } /// \ru Дублирование объекта. \en Duplication of an object. - virtual MbLump & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + virtual MbLump & Duplicate( MbRegDuplicate * iReg = nullptr ) const; /// \ru Получить имя компонента. \en Get the name of a component. uint GetComponent() const { return component; } /// \ru Установить имя компонента. \en Set the name of a component. diff --git a/C3d/Include/map_create.h b/C3d/Include/map_create.h index af3547d..f591436 100644 --- a/C3d/Include/map_create.h +++ b/C3d/Include/map_create.h @@ -64,11 +64,11 @@ class MATH_CLASS MbMapBodiesPArray; class MATH_CLASS MbProjectionsObjects { public: - TPointer< RPArray > annCurves; ///< \ru Аннотационные кривые (может быть нулем). \en Annotation curves (can be c3d_null). - TPointer< RPArray > annotations; ///< \ru Аннотационные объекты (может быть нулем). \en Annotation objects (can be c3d_null). - TPointer< RPArray > symbolObjects; ///< \ru Условные обозначения (может быть нулем). \en Conventional notations (can be c3d_null). - TPointer< RPArray > pointsData; ///< \ru Пространственные точки (может быть нулем). \en Spatial points (can be c3d_null). - TPointer< RPArray > curvesData; ///< \ru Пространственные кривые (может быть нулем). \en Spatial curves (can be c3d_null). + TPointer< RPArray > annCurves; ///< \ru Аннотационные кривые (может быть нулем). \en Annotation curves (can be nullptr). + TPointer< RPArray > annotations; ///< \ru Аннотационные объекты (может быть нулем). \en Annotation objects (can be nullptr). + TPointer< RPArray > symbolObjects; ///< \ru Условные обозначения (может быть нулем). \en Conventional notations (can be nullptr). + TPointer< RPArray > pointsData; ///< \ru Пространственные точки (может быть нулем). \en Spatial points (can be nullptr). + TPointer< RPArray > curvesData; ///< \ru Пространственные кривые (может быть нулем). \en Spatial curves (can be nullptr). public: /** \brief \ru Конструктор. @@ -78,11 +78,11 @@ public: \en Constructor of empty sets of projected objects.\n \~ */ MbProjectionsObjects() - : annCurves ( c3d_null ) - , annotations ( c3d_null ) - , symbolObjects( c3d_null ) - , pointsData ( c3d_null ) - , curvesData ( c3d_null ) + : annCurves ( nullptr ) + , annotations ( nullptr ) + , symbolObjects( nullptr ) + , pointsData ( nullptr ) + , curvesData ( nullptr ) {} /// \ru Конструктор копирования с регистратором. \en Copy-constructor with the registrator. MbProjectionsObjects( const MbProjectionsObjects & other, MbRegDuplicate * iReg ); @@ -104,7 +104,7 @@ public: } /// \ru Дать копию объекта. \en Get a copy of the object. - virtual MbProjectionsObjects & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + virtual MbProjectionsObjects & Duplicate( MbRegDuplicate * iReg = nullptr ) const; /// \ru Отпустить все указатели. \en Detach all pointers. void Relinquish() @@ -173,9 +173,9 @@ public: size_t GetLumpsCount() const { return lumps.size(); } const MbLump * _GetLump( size_t k ) const { return lumps[k]; } - const MbLump * GetLump( size_t k ) const { return ((k < lumps.size()) ? lumps[k] : c3d_null); } + const MbLump * GetLump( size_t k ) const { return ((k < lumps.size()) ? lumps[k] : nullptr); } MbLump * _SetLump( size_t k ) { return lumps[k]; } - MbLump * SetLump( size_t k ) { return ((k < lumps.size()) ? lumps[k] : c3d_null); } + MbLump * SetLump( size_t k ) { return ((k < lumps.size()) ? lumps[k] : nullptr); } template void GetLumps( Lumps & _lumps ) const @@ -282,7 +282,7 @@ MATH_FUNC (MbResultType) GetVestiges ( const MbPlacement3D & place, const MbMapVisibilityMode & visMode, VERSION version = Math::DefaultMathVersion(), bool merge = true, - const std::vector * prevCubes = c3d_null ); + const std::vector * prevCubes = nullptr ); //------------------------------------------------------------------------------ @@ -316,7 +316,7 @@ public: public: MbMapSettings( MbMapVisibilityMode mode, MbPlacement3D place = MbPlacement3D::global, - double znear = 0, bool merge = true, const LumpCubes * prevCubes = c3d_null ) + double znear = 0, bool merge = true, const LumpCubes * prevCubes = nullptr ) : m_place ( place ) , m_zNear ( znear ) , m_visMode ( mode ) diff --git a/C3d/Include/map_implementation.h b/C3d/Include/map_implementation.h index fbb0280..436190c 100644 --- a/C3d/Include/map_implementation.h +++ b/C3d/Include/map_implementation.h @@ -109,7 +109,7 @@ public: void CreateFirst( const RPArray & lumps, const MbMatrix3D & into, double znear, bool perspective, const MbMapVisibilityMode & visMode, VERSION version, - const std::vector * prevCubes = c3d_null ); + const std::vector * prevCubes = nullptr ); /** \brief \ru Построение ассоциативных проекций. \en The construction of associative projections. \~ diff --git a/C3d/Include/map_lump.h b/C3d/Include/map_lump.h index 89e83e8..0a4a6b0 100644 --- a/C3d/Include/map_lump.h +++ b/C3d/Include/map_lump.h @@ -138,7 +138,7 @@ public: /// \ru Деструктор. \en Destructor. virtual ~CurveWType() {} /// \ru Сделать копию объекта. \en Create a copy of the object. - virtual CurveWType & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + virtual CurveWType & Duplicate( MbRegDuplicate * iReg = nullptr ) const; public: @@ -229,7 +229,7 @@ public: explicit MbAnnCurves( const MbName & _name, uint _comp, size_t _ident ) : component ( _comp ) , identifier( _ident ) - , solid ( c3d_null ) + , solid ( nullptr ) , name ( &_name ) , from ( ) , wtCurves ( 0, 1, true ) @@ -245,7 +245,7 @@ public: public: /// \ru Дать копию объекта. \en Get a copy of the object. - virtual MbAnnCurves & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + virtual MbAnnCurves & Duplicate( MbRegDuplicate * iReg = nullptr ) const; /// \ru Получить имя компонента. \en Get the component name. uint GetComponent() const { return component; } @@ -265,12 +265,12 @@ public: \param[in, out] wtCurve - \ru Кривая. \en A curve. \~ */ - void AbsorbCurve( CurveWType *& wtCurve ) { wtCurves.Add( wtCurve ); wtCurve = c3d_null; } + void AbsorbCurve( CurveWType *& wtCurve ) { wtCurves.Add( wtCurve ); wtCurve = nullptr; } /// \ru Количество кривых в наборе. \en The number of curves in the set. size_t GetCurvesCount() const { return wtCurves.Count(); } /// \ru Получить указатель на кривую. \en Get the pointer to the curve. - const CurveWType * GetCurve( size_t k ) const { return ((k < wtCurves.Count()) ? wtCurves[k] : c3d_null); } + const CurveWType * GetCurve( size_t k ) const { return ((k < wtCurves.Count()) ? wtCurves[k] : nullptr); } private: DECLARE_PERSISTENT_CLASS_NEW_DEL ( MbAnnCurves ) @@ -317,7 +317,7 @@ public : public: /// \ru Дать копию объекта. \en Get a copy of the object. - virtual MbSimbolthThreadView & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + virtual MbSimbolthThreadView & Duplicate( MbRegDuplicate * iReg = nullptr ) const; public : /// \ru Получить аннотационные кривые для редактирования. \en Get annotative curves for editing. @@ -508,7 +508,7 @@ public: public: /// \ru Дать копию объекта. \en Get a copy of the object. - virtual MbSpacePoints & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + virtual MbSpacePoints & Duplicate( MbRegDuplicate * iReg = nullptr ) const; public: @@ -587,9 +587,7 @@ public: Free the unnecessary memory in arrays of points and names. \~ */ void AdjustMemory() { - #ifdef C3D_STANDARD_CXX_11_PARTIAL points.shrink_to_fit(); names.shrink_to_fit(); - #endif } /** \} */ @@ -659,16 +657,16 @@ public: \en Get the name. \~ \details \ru Получить имя по индексу.\n Если индекс некорректный, то есть не меньше числа точек, - вернет c3d_null. + вернет nullptr. \en Get the name by an index.\n If the index is incorrect i.e. it isn't less than the number of points, - c3d_null is returned. \~ + nullptr is returned. \~ \param[in] k - \ru Индекс имени. \en A name index. \~ \return \ru Имя по индексу из набора имен. \en A name by an index from the set of names. \~ */ - const MbName * GetName( size_t k ) const { return ((k < names.size()) ? names[k] : c3d_null); } + const MbName * GetName( size_t k ) const { return ((k < names.size()) ? names[k] : nullptr); } /** \} */ DECLARE_PERSISTENT_CLASS_NEW_DEL ( MbSpacePoints ) @@ -786,7 +784,7 @@ private: public: /// \ru Дать копию объекта. \en Get a copy of the object. - virtual MbSpaceCurves & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + virtual MbSpaceCurves & Duplicate( MbRegDuplicate * iReg = nullptr ) const; public: /** \} */ @@ -877,9 +875,7 @@ public: Frees the unnecessary memory in arrays of points and names. \~ */ void AdjustMemory() { - #ifdef C3D_STANDARD_CXX_11_PARTIAL curves.shrink_to_fit(); names.shrink_to_fit(); - #endif } /** \} */ @@ -908,11 +904,11 @@ public: \param[in] k - \ru Индекс кривой. \en A curve index. \~ \return \ru Указатель на кривую, если индекс меньше количества кривых,\n - иначе c3d_null. + иначе nullptr. \en A pointer to a curve, if the index is less than the number of curves,\n - otherwise c3d_null is returned. \~ + otherwise nullptr is returned. \~ */ - const MbCurve3D * GetCurve( size_t k ) const { return ((k < curves.size()) ? curves[k] : c3d_null); } + const MbCurve3D * GetCurve( size_t k ) const { return ((k < curves.size()) ? curves[k] : nullptr); } /** \} */ /**\ru \name Доступ к именам. @@ -940,11 +936,11 @@ public: \param[in] k - \ru Индекс имени. \en A name index. \~ \return \ru Указатель на имя, если индекс меньше количества имен,\n - иначе c3d_null. + иначе nullptr. \en A pointer to a name, if the index is less than the number of curves, - otherwise c3d_null is returned. \~ + otherwise nullptr is returned. \~ */ - const MbName * GetName( size_t k ) const { return ((k < names.size()) ? names[k] : c3d_null); } ///< \ru Получить имя. \en Get the name. + const MbName * GetName( size_t k ) const { return ((k < names.size()) ? names[k] : nullptr); } ///< \ru Получить имя. \en Get the name. /** \} */ DECLARE_PERSISTENT_CLASS_NEW_DEL ( MbSpaceCurves ) @@ -958,7 +954,7 @@ IMPL_PERSISTENT_OPS( MbSpaceCurves ) inline void MbSpaceCurves::AddNamedCurve( MbCurve3D * crv, MbName * nm, bool noSameCheck ) { - if ( crv != c3d_null && (noSameCheck || curves.FindIt( crv ) == SYS_MAX_T ) ) { + if ( crv != nullptr && (noSameCheck || curves.FindIt( crv ) == SYS_MAX_T ) ) { curves.push_back( crv ); crv->AddRef(); names.push_back( nm ); @@ -1111,7 +1107,7 @@ public: */ MbMappingLumps( const MbSolid & _solid, const MbMatrix3D & _from, bool _willCut, uint _comp = 0, size_t _ident = SYS_MAX_T ) : MbCutLump ( _solid, _from, _comp, _ident ) - , lumps ( c3d_null ) + , lumps ( nullptr ) , willCut ( _willCut ) { } @@ -1121,13 +1117,13 @@ public: \details \ru Конструктор по набору тел.\n Захватывает тело MbSolid из первого элемента _lumps и остальные элементы _lumps методом AddRef().\n - Если в _lumps один элемент, массив lumps остается c3d_null.\n - Если в _lumps нет элементов, тело MbSolid в базовом объекте = c3d_null. Таких объектов быть не должно. + Если в _lumps один элемент, массив lumps остается nullptr.\n + Если в _lumps нет элементов, тело MbSolid в базовом объекте = nullptr. Таких объектов быть не должно. \en Constructor by a set of solids.\n Captures MbSolid solid from the first element of the _lumps and the other elements of the _lumps by AddRef() method.\n - If the _lumps contains one element the lumps array remains c3d_null.\n - If the _lumps doesn't contain any elements the MbSolid solid in the base object = c3d_null. These objects should not be. \~ + If the _lumps contains one element the lumps array remains nullptr.\n + If the _lumps doesn't contain any elements the MbSolid solid in the base object = nullptr. These objects should not be. \~ \param[in] _lumps - \ru Контейнер тел с матрицами преобразования в глобальную систему координат,. не должен быть пустым контейнером. \en A container of solids with the matrices of transformation to the global coordinate system @@ -1136,13 +1132,13 @@ public: template MbMappingLumps( const LumpsVector & _lumps ) : MbCutLump() - , lumps( c3d_null ) + , lumps( nullptr ) , willCut( false ) // конструктор по нескольким телам только в случае "не рассекать" { size_t count = _lumps.size(); - C3D_ASSERT( count > 0 && _lumps[0] != c3d_null ); + C3D_ASSERT( count > 0 && _lumps[0] != nullptr ); - if ( count > 0 && _lumps[0] != c3d_null ) { + if ( count > 0 && _lumps[0] != nullptr ) { from = _lumps[0]->GetMatrixFrom(); component = _lumps[0]->GetComponent(); identifier = _lumps[0]->GetIdentifier(); @@ -1154,7 +1150,7 @@ public: lumps = new c3d::LumpsSPtrVector(); for ( size_t i = 1; i < count; ++i ) { MbLump * lump = _lumps[i]; - if ( lump != c3d_null ) + if ( lump != nullptr ) lumps->push_back( c3d::LumpSPtr(lump) ); } } @@ -1167,19 +1163,19 @@ public: /** \brief \ru Число тел. \en The number of solids. \~ \details \ru Число тел.\n - Минимальное количество - 1 тело. В этом случае массив lumps = c3d_null. - В случае, если массив lumps != c3d_null, количество тел равно количеству + Минимальное количество - 1 тело. В этом случае массив lumps = nullptr. + В случае, если массив lumps != nullptr, количество тел равно количеству элементов в массиве плюс один. \en The number of solids.\n - Minimal number = 1 solid. In this case the lumps array is c3d_null. - In a case when the lumps array isn't c3d_null the number of solids is equal to + Minimal number = 1 solid. In this case the lumps array is nullptr. + In a case when the lumps array isn't nullptr the number of solids is equal to the number of elements in the array plus one. \~ \return \ru Число тел. \en The number of solids. \~ */ size_t Count() const { size_t res = 1; - if ( lumps != c3d_null ) + if ( lumps != nullptr ) res += lumps->size(); return res; } @@ -1190,21 +1186,21 @@ public: По индексу 0 выдается базовый объект.\n По индексу i выдается объект из массива lumps с индексом i-1.\n Индекс проверяется на корректность. - В случае некорректного индекса возвращает c3d_null. + В случае некорректного индекса возвращает nullptr. \en A solid by an index.\n The basic object is given by the "0" index.\n An object with the index i - 1 from the lumps array is issued by the index i.\n An index is validated for correctness. - In a case of an incorrect index the method returns c3d_null. \~ + In a case of an incorrect index the method returns nullptr. \~ \return \ru Указатель на тело с матрицей. \en A pointer to a solid with a matrix. \~ */ MbLump * operator []( size_t ind ) { if ( ind == 0 ) return static_cast( this ); - else if ( lumps != c3d_null && ind - 1 < lumps->size() ) + else if ( lumps != nullptr && ind - 1 < lumps->size() ) return lumps->operator []( ind - 1 ); - return c3d_null; + return nullptr; } /** \brief \ru Тело по индексу. @@ -1213,12 +1209,12 @@ public: По индексу 0 выдается базовый объект.\n По индексу i выдается объект из массива lumps с индексом i-1.\n Индекс проверяется на корректность. - В случае некорректного индекса возвращает c3d_null. + В случае некорректного индекса возвращает nullptr. \en A solid by an index.\n The basic object is given by the "0" index.\n An object with the index i - 1 from the lumps array is issued by the index i.\n An index is validated for correctness. - In a case of an incorrect index the method returns c3d_null. \~ + In a case of an incorrect index the method returns nullptr. \~ \return \ru Константный указатель на тело с матрицей. \en A constant pointer to a solid with a matrix. \~ */ @@ -1226,9 +1222,9 @@ public: { if ( ind == 0 ) return static_cast( this ); - else if ( lumps != c3d_null && ind - 1 < lumps->size() ) + else if ( lumps != nullptr && ind - 1 < lumps->size() ) return lumps->operator []( ind - 1 ); - return c3d_null; + return nullptr; } void ChangeLump( size_t ind, MbLump * newLump ) @@ -1239,7 +1235,7 @@ public: component = newLump->GetComponent(); identifier = newLump->GetIdentifier(); } - else if ( lumps != c3d_null && ind - 1 < lumps->size() ) { + else if ( lumps != nullptr && ind - 1 < lumps->size() ) { (*lumps)[ind - 1] = newLump; } } @@ -1323,7 +1319,7 @@ public: } /// \ru Деструктор. \en Destructor. ~MbPolygon3DSolid() { - if ( polygon != c3d_null ) + if ( polygon != nullptr ) delete polygon; } @@ -1332,7 +1328,7 @@ public: /// \ru Получить имя компонента. \en Get the name of a component. uint GetComponent() const { return component; } /// \ru Занулить полигон без удаления. \en Reset polygon without removal. - void DoNotDeletePolyg() { polygon = c3d_null; } + void DoNotDeletePolyg() { polygon = nullptr; } OBVIOUS_PRIVATE_COPY( MbPolygon3DSolid ) }; diff --git a/C3d/Include/map_section.h b/C3d/Include/map_section.h index f7dffe2..8fc7806 100644 --- a/C3d/Include/map_section.h +++ b/C3d/Include/map_section.h @@ -87,7 +87,7 @@ public: \en Clear the array of contours if it isn't null. \~ */ void DetachContours() { - if ( arContours != c3d_null ) + if ( arContours != nullptr ) arContours->Flush( noDelete ); } @@ -142,10 +142,10 @@ public: /** \brief \ru Добавить оболочку. \en Add a shell. \~ \details \ru Добавить оболочку в набор оболочек.\n - Добавляется, даже если равна c3d_null.\n + Добавляется, даже если равна nullptr.\n Если не нулевая - захватывается. \en Add a shell into the set of shells.\n - A shell is added even if it is equal to c3d_null.\n + A shell is added even if it is equal to nullptr.\n If a shell isn't null it is captured. \~ \param[in] secShell - \ru Оболочка. \en A shell. \~ @@ -331,7 +331,7 @@ public: \return \ru true, если массив точек не нулевой и не пустой. \en returns true if the array of points isn't null and isn't empty. \~ */ - bool IsSpacePoints() const { return (pointsData != c3d_null && pointsData->size() > 0); } + bool IsSpacePoints() const { return (pointsData != nullptr && pointsData->size() > 0); } /** \brief \ru Есть ли в объекте кривые. \en Whether any curve is in an object. \~ @@ -340,7 +340,7 @@ public: \return \ru true, если массив кривых не нулевой и не пустой. \en returns true if the array of curves isn't null and isn't empty. \~ */ - bool IsSpaceCurves() const { return (curvesData != c3d_null && curvesData->size() > 0); } + bool IsSpaceCurves() const { return (curvesData != nullptr && curvesData->size() > 0); } const RPArray * GetSpacePoints() const { return pointsData; } ///< \ru Получить указатель на пространственные точки. \en Get spatial points. const RPArray * GetSpaceCurves() const { return curvesData; } ///< \ru Получить указатель на пространственные кривые. \en Get spatial curves. diff --git a/C3d/Include/map_vestige.h b/C3d/Include/map_vestige.h index e05ce3b..bd6a1a6 100644 --- a/C3d/Include/map_vestige.h +++ b/C3d/Include/map_vestige.h @@ -154,7 +154,7 @@ protected: , ident ( otherIdent ) , style ( SYS_MAX_UINT16 ) , attrData ( ) - , item ( c3d_null ) + , item ( nullptr ) , name ( &otherName ) { name.SetOwn( false ); } /// \ru Конструктор копирования с регистратором. \en Copy-constructor with the registrator. @@ -164,13 +164,13 @@ protected: : comp ( 0 ) , ident ( SYS_MAX_T ) , style ( SYS_MAX_UINT16 ) - , item ( c3d_null ) - , name ( c3d_null ) + , item ( nullptr ) + , name ( nullptr ) { name.SetOwn(false); } virtual ~MbBaseVestige() {} public: - virtual MbBaseVestige & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; ///< \ru Создать копию объекта. \en Create a copy of the object. + virtual MbBaseVestige & Duplicate( MbRegDuplicate * iReg = nullptr ) const; ///< \ru Создать копию объекта. \en Create a copy of the object. public: uint GetComponent() const { return comp; } size_t GetIdentifier() const { return ident; } @@ -268,7 +268,7 @@ protected: {} public: /// \ru Создать копию объекта. \en Create a copy of the object. - virtual MbBaseVestige & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + virtual MbBaseVestige & Duplicate( MbRegDuplicate * iReg = nullptr ) const; public: /// \ru Тип отображения. \en Mapping type. Type GetType() const { return (Type)vesType; } @@ -304,11 +304,11 @@ void ReplaceCurveVestigeDuplicates( MbCurveVestige & ); // --- struct MATH_CLASS MbCurveVestige : public TapeBase { protected: - SPtr totalPrj; ///< \ru Полная проекция (может быть c3d_null). \en A full projection (can be c3d_null). \~ \internal \ru Владеет. \en Owns. \~ \endinternal + SPtr totalPrj; ///< \ru Полная проекция (может быть nullptr). \en A full projection (can be nullptr). \~ \internal \ru Владеет. \en Owns. \~ \endinternal std::vector arTotal; ///< \ru Все проекции в упорядоченной форме. \en All projections in an ordered form. \~ \internal \ru Не владеет. \en Doesn't own. \~ \endinternal // \ru Двумерные кривые лежат копиями, поэтому массивы владеющие. \en Two-dimensional uv-curves are copies therefore arrays are owners - // \ru Если кривых нет то указатель останется нулевым. \en If no curves then the pointer remains c3d_null. + // \ru Если кривых нет то указатель останется нулевым. \en If no curves then the pointer remains nullptr. TPointer< PArray > arVisPrj; ///< \ru Видимые проекции. \en Visible projections. TPointer< PArray > arHidPrj; ///< \ru Не видимые проекции. \en Invisible projections. @@ -321,10 +321,10 @@ public: Creates an object with the null projection. \~ */ MbCurveVestige() - : totalPrj( c3d_null ) + : totalPrj( nullptr ) , arTotal ( ) - , arVisPrj( c3d_null ) - , arHidPrj( c3d_null ) + , arVisPrj( nullptr ) + , arHidPrj( nullptr ) {} /// \ru Конструктор копирования с регистратором. \en Copy-constructor with the registrator. MbCurveVestige( const MbCurveVestige & other, MbRegDuplicate * iReg ); @@ -332,7 +332,7 @@ public: virtual ~MbCurveVestige() { ClearAll(); } public: /// \ru Создать копию объекта. \en Create a copy of the object. - virtual MbCurveVestige & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + virtual MbCurveVestige & Duplicate( MbRegDuplicate * iReg = nullptr ) const; public: /** \brief \ru Очистить проекции. @@ -347,14 +347,14 @@ public: void ClearAll() { arTotal.clear(); - totalPrj = c3d_null; - arVisPrj = c3d_null; - arHidPrj = c3d_null; + totalPrj = nullptr; + arVisPrj = nullptr; + arHidPrj = nullptr; } /// \ru Пустое ли отображение кривой? \en Is an empty curve vestige? bool IsEmpty() const { - return ( totalPrj == c3d_null ) && + return ( totalPrj == nullptr ) && ( arTotal.size() < 1 ) && ( !arVisPrj || arVisPrj->empty() ) && ( !arHidPrj || arHidPrj->empty() ); @@ -372,9 +372,9 @@ public: bool IsHiddenCurvesArray () const { return !!arHidPrj; } /// \ru Получить видимую часть проекции. \en Get visible part of projection. - const MbCurve * _GetVisibleCurve( size_t k ) const { return (( !!arVisPrj ) ? (*arVisPrj)[k] : c3d_null); } + const MbCurve * _GetVisibleCurve( size_t k ) const { return (( !!arVisPrj ) ? (*arVisPrj)[k] : nullptr); } /// \ru Получить невидимую часть проекции. \en Get hidden part of projection. - const MbCurve * _GetHiddenCurve ( size_t k ) const { return (( !!arHidPrj ) ? (*arHidPrj)[k] : c3d_null); } + const MbCurve * _GetHiddenCurve ( size_t k ) const { return (( !!arHidPrj ) ? (*arHidPrj)[k] : nullptr); } /// \ru Положить в массив указатели видимых частей проекции. \en Put pointers of visible parts of projection into the array. template @@ -433,7 +433,7 @@ public: bool RepairSpecificCorrespondence( bool uncertainIsVisible ); /// \ru Есть ли указатель на полную проекцию? \en Is there a pointer to the full projection? - bool IsTotalProjection() const { return (totalPrj != c3d_null); } + bool IsTotalProjection() const { return (totalPrj != nullptr); } /// \ru Указатель на полную проекцию. \en The pointer to a full projection. MbCurve * DetachTotalProjection() { return ::DetachItem( totalPrj ); } /// \ru Установить полную проекцию. \en Set a full projection. @@ -466,7 +466,7 @@ const MbCurve * MbCurveVestige::GetFullProjection() const MbCurve * curve = totalPrj; - if ( curve == c3d_null ) { + if ( curve == nullptr ) { if ( !!arVisPrj && (arVisPrj->size() == 1) ) curve = arVisPrj->operator[]( 0 ); else if ( !!arHidPrj && (arHidPrj->size() == 1) ) @@ -480,15 +480,15 @@ const MbCurve * MbCurveVestige::GetFullProjection() const //--- inline MbCurve * MbCurveVestige::_PickupVisibleCurve( size_t k ) { - if ( arVisPrj != c3d_null ) { + if ( arVisPrj != nullptr ) { PArray & crvs = *arVisPrj; MbCurve * crv = crvs[k]; ::AddRefItem( crv ); // захват и отпускание на случай перехода на владение по счетчику ссылок - crvs[k] = c3d_null; + crvs[k] = nullptr; ::DecRefItem( crv ); return crv; } - return c3d_null; + return nullptr; } //------------------------------------------------------------------------------ @@ -496,15 +496,15 @@ inline MbCurve * MbCurveVestige::_PickupVisibleCurve( size_t k ) //--- inline MbCurve * MbCurveVestige::_PickupHiddenCurve( size_t k ) { - if ( arHidPrj != c3d_null ) { + if ( arHidPrj != nullptr ) { PArray & crvs = *arHidPrj; MbCurve * crv = crvs[k]; ::AddRefItem( crv ); // захват и отпускание на случай перехода на владение по счетчику ссылок - crvs[k] = c3d_null; + crvs[k] = nullptr; ::DecRefItem( crv ); return crv; } - return c3d_null; + return nullptr; } //------------------------------------------------------------------------------ @@ -513,11 +513,11 @@ inline MbCurve * MbCurveVestige::_PickupHiddenCurve( size_t k ) inline void MbCurveVestige::DetachAllCurves( PArray *& visCurves, PArray *& hidCurves, SPtr & wholePrj ) { wholePrj = totalPrj; - totalPrj = c3d_null; + totalPrj = nullptr; arTotal.clear(); - visCurves = !!arVisPrj ? arVisPrj.Relinquish() : c3d_null; - hidCurves = !!arHidPrj ? arHidPrj.Relinquish() : c3d_null; + visCurves = !!arVisPrj ? arVisPrj.Relinquish() : nullptr; + hidCurves = !!arHidPrj ? arHidPrj.Relinquish() : nullptr; } //------------------------------------------------------------------------------ @@ -634,7 +634,7 @@ protected: , vesSubType( vst_None ) {} public: - virtual MbBaseVestige & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + virtual MbBaseVestige & Duplicate( MbRegDuplicate * iReg = nullptr ) const; public: /// \ru Получить тип отображения. \en Get mapping type. Type GetType() const { return (Type)vesType; } @@ -735,7 +735,7 @@ protected: /// \ru Конструктор копирования с регистратором. \en Copy-constructor with the registrator. MbFaceVestige( const MbFaceVestige & other, MbRegDuplicate * iReg ); public: - virtual MbBaseVestige & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + virtual MbBaseVestige & Duplicate( MbRegDuplicate * iReg = nullptr ) const; public: /// \ru Тип отображения. \en Mapping type. Type GetType() const { return (Type)vesType; } @@ -796,7 +796,7 @@ protected: MbAnnotationEdgeVestige( const MbAnnotationEdgeVestige & other, MbRegDuplicate * iReg ); public: - virtual MbBaseVestige & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + virtual MbBaseVestige & Duplicate( MbRegDuplicate * iReg = nullptr ) const; public: /// \ru Тип отображения. \en Mapping type. @@ -886,7 +886,7 @@ protected: MbSymbolVestige( uint otherComp, size_t otherIdent, const MbTopologyItem * otherItem, const MbName & otherName, bool _bvisible = true ) : MbBaseVestige( otherComp, otherIdent, otherName, otherItem ) , bvisible( _bvisible ) - , matrix ( c3d_null ) + , matrix ( nullptr ) {} /// \ru Конструктор копирования с регистратором. \en Copy-constructor with the registrator. MbSymbolVestige( const MbSymbolVestige & other, MbRegDuplicate * iReg ); @@ -894,12 +894,12 @@ protected: MbSymbolVestige() : MbBaseVestige() , bvisible( true ) - , matrix ( c3d_null ) + , matrix ( nullptr ) {} public: virtual ~MbSymbolVestige() {} - virtual MbBaseVestige & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + virtual MbBaseVestige & Duplicate( MbRegDuplicate * iReg = nullptr ) const; public: /// \ru Это видимая точка? \en Is point visible? @@ -924,8 +924,8 @@ IMPL_PERSISTENT_OPS( MbSymbolVestige ) // --- inline void MbSymbolVestige::SetMatrix( const MbMatrix & initMatrix ) { - C3D_ASSERT( matrix == c3d_null ); - if ( matrix == c3d_null ) + C3D_ASSERT( matrix == nullptr ); + if ( matrix == nullptr ) matrix = new MbMatrix( initMatrix ); else *matrix = initMatrix; @@ -970,7 +970,7 @@ public: public: /// \ru Создать копию объекта. \en Create a copy of the object. - virtual MbVEFVestiges & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + virtual MbVEFVestiges & Duplicate( MbRegDuplicate * iReg = nullptr ) const; /// \ru Очистить массивы следов. \en Clear arrays of vestiges. void SetEmpty() { @@ -1209,16 +1209,16 @@ inline MbEdgeVestige * MbVEFVestiges::AddVestigeCurve( uint otherComp, size_t ot inline MbEdgeVestige * MbVEFVestiges::AddVestigeCurve( uint otherComp, size_t otherIdent, const RPArray & mapCurves, bool visible, const MbName & otherName ) { - MbEdgeVestige * ev = c3d_null; + MbEdgeVestige * ev = nullptr; ev = ::AddVestigeCurve( otherComp, otherIdent, otherName, curveVestiges, false, false ); // BUG_93683 ev = ::AddVestigeEdge( otherComp, otherIdent, otherName, MbBaseVestige::vt_Edge, edgeVestiges ); - if ( ev != c3d_null ) { + if ( ev != nullptr ) { MbCurveVestige & vc = ev->curveInfo; for ( size_t m = 0, mapCurvesCnt = mapCurves.Count(); m < mapCurvesCnt; m++ ) { MbCurve * mapCurve = mapCurves[m]; - if ( mapCurve != c3d_null ) + if ( mapCurve != nullptr ) vc.AddSegment( *mapCurve, visible ); } } diff --git a/C3d/Include/marker.h b/C3d/Include/marker.h index 94cbd38..bd687c9 100644 --- a/C3d/Include/marker.h +++ b/C3d/Include/marker.h @@ -76,10 +76,10 @@ public: // \ru Общие функции геометрического объекта \en Common functions of a geometric object virtual MbeSpaceType IsA() const; // \ru Тип объекта. \en Type of the object. virtual MbeSpaceType Type() const; // \ru Тип объекта. \en Type of the object. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. - virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. + virtual void Rotate( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual bool IsSame( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными? \en Determine whether objects are equal. virtual bool IsSimilar( const MbSpaceItem & init ) const; // \ru Являются ли объекты подобными? \en Determine whether objects are similar. virtual bool SetEqual ( const MbSpaceItem & init ); // \ru Сделать объекты равным. \en Make objects equal. diff --git a/C3d/Include/math_define.h b/C3d/Include/math_define.h index bc49714..b2c83f3 100644 --- a/C3d/Include/math_define.h +++ b/C3d/Include/math_define.h @@ -106,7 +106,7 @@ typedef std::pair IndicesPairsPair; ///< \ru Па // --- template bool IsNullPointer( const ItemPtr * itemPtr ) { - return ((c3d_null == itemPtr) ? true : false); + return ((nullptr == itemPtr) ? true : false); } //------------------------------------------------------------------------------ @@ -306,7 +306,7 @@ private: \ // // \ru примеры: \en examples: // \ru #pragma message( __TODO__ "Восстановить закрытый код" ) \en #pragma message( __TODO__ "Restore the private code" ) -// \ru #pragma message( __WARN__ "Отсутствует проверка на c3d_null" ) \en #pragma message( __WARN__ "There is no check for c3d_null" ) +// \ru #pragma message( __WARN__ "Отсутствует проверка на nullptr" ) \en #pragma message( __WARN__ "There is no check for nullptr" ) //--- #define __ANYTOSTR__(x) #x #define __DEFTOSTR__(x) __ANYTOSTR__(x) @@ -362,13 +362,13 @@ private: \ #define GCM_CLASS MATH_CLASS #define GCE_FUNC MATH_FUNC #define GCM_FUNC MATH_FUNC -#if !defined(PROTECTION_ENABLED) +#ifdef GCT_EXPORT #define GCT_CLASS MATH_CLASS #define GCT_FUNC MATH_FUNC #else #define GCT_CLASS #define GCT_FUNC(retType) retType -#endif +#endif // GCT_EXPORT // \ru Модуль конвертеров. \en Converters module. #define CONV_CLASS MATH_CLASS diff --git a/C3d/Include/math_version.h b/C3d/Include/math_version.h index 3feb3b2..393e82a 100644 --- a/C3d/Include/math_version.h +++ b/C3d/Include/math_version.h @@ -115,7 +115,7 @@ MATH_FUNC (VERSION) GetCurrentMathFileVersion(); //------------------------------------------------------------------------------ /// \ru Можно ли потенциально сохранить в заданную версию? \en Can it be saved to this math version? \~ \ingroup Base_Tools // --- -MATH_FUNC( bool ) CanWriteToMathFileVersion( VERSION dstVertsion, bool * canUseWriterEx = c3d_null ); +MATH_FUNC( bool ) CanWriteToMathFileVersion( VERSION dstVertsion, bool * canUseWriterEx = nullptr ); //------------------------------------------------------------------------------ diff --git a/C3d/Include/mb_class_traits.h b/C3d/Include/mb_class_traits.h index 9ef6082..b771839 100644 --- a/C3d/Include/mb_class_traits.h +++ b/C3d/Include/mb_class_traits.h @@ -57,7 +57,7 @@ struct _IsInstant template inline bool operator()( const ParentType * obj, const ClassEnum _typeId ) { - return obj == c3d_null ? true : obj->IsA() == _typeId; + return obj == nullptr ? true : obj->IsA() == _typeId; } }; @@ -69,7 +69,7 @@ struct _IsFamily template inline bool operator()( const ParentType * obj, const ClassEnum _typeId ) { - return obj == c3d_null ? true : obj->Family() == _typeId; + return obj == nullptr ? true : obj->Family() == _typeId; } }; @@ -154,7 +154,7 @@ inline DerivedPtr _IsaCast( ParentType * obj ) { return static_cast( obj ); } - return static_cast( c3d_null ); + return static_cast( nullptr ); } //---------------------------------------------------------------------------------------- @@ -202,7 +202,7 @@ DerivedPtr isa_cast( ParentType * obj ) template< class DerivedPtr > DerivedPtr isa_cast( const MbRefItem * obj ) { - DerivedPtr resPtr = c3d_null; + DerivedPtr resPtr = nullptr; return _IsaCast( obj, resPtr ); } @@ -214,7 +214,7 @@ DerivedPtr isa_cast( const MbRefItem * obj ) template< class DerivedPtr > DerivedPtr isa_cast( MbRefItem * obj ) { - DerivedPtr resPtr = c3d_null; + DerivedPtr resPtr = nullptr; return _IsaCast( obj, resPtr ); } diff --git a/C3d/Include/mb_cross_point.h b/C3d/Include/mb_cross_point.h index 4076aba..285555f 100644 --- a/C3d/Include/mb_cross_point.h +++ b/C3d/Include/mb_cross_point.h @@ -55,7 +55,7 @@ public: template MbPointOnCurve::MbPointOnCurve() : t ( 0.0 ) - , curve( c3d_null ) + , curve( nullptr ) {} diff --git a/C3d/Include/mb_cube_tree.h b/C3d/Include/mb_cube_tree.h index a55f613..8d3df4c 100644 --- a/C3d/Include/mb_cube_tree.h +++ b/C3d/Include/mb_cube_tree.h @@ -337,9 +337,9 @@ inline MbCubeTree::MbCubeTree( std::vector , dmType ( dm ) , leafObjects( ) , branchCube ( ) - , midstBranch( c3d_null ) - , lowerBranch( c3d_null ) - , upperBranch( c3d_null ) + , midstBranch( nullptr ) + , lowerBranch( nullptr ) + , upperBranch( nullptr ) { size_t cnt = objects.size(); C3D_ASSERT( Cube::GetDimension() == Point::GetDimension() ); @@ -347,7 +347,7 @@ inline MbCubeTree::MbCubeTree( std::vector if ( cnt > 0 ) { // Инициализация дерева Cube gabarit; for ( size_t i = 0; i < cnt; ++i ) { - if ( objects[i].first != c3d_null ) + if ( objects[i].first != nullptr ) gabarit |= objects[i].first->GetCube(); } branchCube = gabarit; @@ -372,9 +372,9 @@ inline MbCubeTree::MbCubeTree( std::vector , dmType ( dm ) , leafObjects( ) , branchCube ( gabarit ) - , midstBranch( c3d_null ) - , lowerBranch( c3d_null ) - , upperBranch( c3d_null ) + , midstBranch( nullptr ) + , lowerBranch( nullptr ) + , upperBranch( nullptr ) { C3D_ASSERT( Cube::GetDimension() == Point::GetDimension() ); InitTree( objects, gabarit, eda_anyDir, 0, 0 ); @@ -397,9 +397,9 @@ inline MbCubeTree::MbCubeTree( DistanceMeasure dm ) , dmType ( dm ) , leafObjects( ) , branchCube ( ) - , midstBranch( c3d_null ) - , lowerBranch( c3d_null ) - , upperBranch( c3d_null ) + , midstBranch( nullptr ) + , lowerBranch( nullptr ) + , upperBranch( nullptr ) { } @@ -413,7 +413,7 @@ inline void MbCubeTree::Clear() delete midstBranch; delete lowerBranch; delete upperBranch; - midstBranch = lowerBranch = upperBranch = c3d_null; + midstBranch = lowerBranch = upperBranch = nullptr; midst = minimum = maximum = lower = upper = 0.0; direction = eda_anyDir; branchCube.SetEmpty(); @@ -440,11 +440,11 @@ template inline void MbCubeTree::Move( const Vector & to ) { if ( to.MaxFactor() > 0.0 ) { - if ( midstBranch != c3d_null ) + if ( midstBranch != nullptr ) midstBranch->Move( to ); - if ( lowerBranch != c3d_null ) + if ( lowerBranch != nullptr ) lowerBranch->Move( to ); - if ( upperBranch != c3d_null ) + if ( upperBranch != nullptr ) upperBranch->Move( to ); Point pto; @@ -485,7 +485,7 @@ inline bool MbCubeTree::InitTree( const MbCubeTree::const_iterator it; - ItemItem itemPair( c3d_null, c3d_null ); + ItemItem itemPair( nullptr, nullptr ); for ( size_t k = 0; k < cnt && res; ++k ) { res = false; @@ -503,9 +503,9 @@ inline bool MbCubeTree::InitTree( const MbCubeTree( srcTree.midstBranch->dmType ); else midstBranch->Clear(); @@ -513,9 +513,9 @@ inline bool MbCubeTree::InitTree( const MbCubeTreeInitTree( *srcTree.midstBranch, itemPairs ); } - if ( res && (srcTree.lowerBranch != c3d_null) ) { - C3D_ASSERT( lowerBranch == c3d_null ); - if ( lowerBranch == c3d_null ) + if ( res && (srcTree.lowerBranch != nullptr) ) { + C3D_ASSERT( lowerBranch == nullptr ); + if ( lowerBranch == nullptr ) lowerBranch = new MbCubeTree( srcTree.lowerBranch->dmType ); else lowerBranch->Clear(); @@ -523,9 +523,9 @@ inline bool MbCubeTree::InitTree( const MbCubeTreeInitTree( *srcTree.lowerBranch, itemPairs ); } - if ( res && (srcTree.upperBranch != c3d_null) ) { - C3D_ASSERT( upperBranch == c3d_null ); - if ( upperBranch == c3d_null ) + if ( res && (srcTree.upperBranch != nullptr) ) { + C3D_ASSERT( upperBranch == nullptr ); + if ( upperBranch == nullptr ) upperBranch = new MbCubeTree( srcTree.upperBranch->dmType ); else upperBranch->Clear(); @@ -565,7 +565,7 @@ inline bool MbCubeTree::InitTree( const MbCubeTreeIsSame( *dstItem, eps ) ) { itemPairs[k].first = srcItem; itemPairs[k].second = dstItem; @@ -822,7 +822,7 @@ inline void MbCubeTree::SetBranches( std::vectorGetCube(); double pMin, pMax; @@ -861,34 +861,22 @@ inline void MbCubeTree::SetBranches( std::vectorGetCube(); double pMin, pMax; GetCubeMinMaxComponents( cube, 0.0, pMin, pMax ); if ( pMax < midst - eps ) { // объект расположен ниже центрального значения -#ifdef C3D_STANDARD_CXX_11_PARTIAL lowerArray.emplace_back( obj ); -#else - lowerArray.push_back( obj ); -#endif } else if ( pMin > midst + eps ) { // объект расположен выше центрального значения -#ifdef C3D_STANDARD_CXX_11_PARTIAL upperArray.emplace_back( obj ); -#else - upperArray.push_back( obj ); -#endif } else { // объект содержит центральное значение lower = std_min( lower, pMin ); upper = std_max( upper, pMax ); -#ifdef C3D_STANDARD_CXX_11_PARTIAL midstArray.emplace_back( obj ); -#else - midstArray.push_back( obj ); -#endif } } } @@ -902,22 +890,22 @@ inline void MbCubeTree::SetBranches( std::vector 0) || (upperCount > 0) ) { if ( lowerCount > 0 ) { // нижняя ветвь / lower branch - C3D_ASSERT ( lowerBranch == c3d_null ); - if ( lowerBranch == c3d_null ) + C3D_ASSERT ( lowerBranch == nullptr ); + if ( lowerBranch == nullptr ) lowerBranch = new MbCubeTree( dmType ); lowerBranch->InitTree( lowerArray, lowerGabarit, eda_anyDir, tier+1, 0 ); lowerArray.clear(); } if ( upperCount > 0 ) { // верхняя ветвь / upper branch - C3D_ASSERT( upperBranch == c3d_null ); - if ( upperBranch == c3d_null ) + C3D_ASSERT( upperBranch == nullptr ); + if ( upperBranch == nullptr ) upperBranch = new MbCubeTree( dmType ); upperBranch->InitTree( upperArray, upperGabarit, eda_anyDir, tier+1, 0 ); upperArray.clear(); } if ( midstCount > 0 ) { // центральная ветвь / central branch - C3D_ASSERT( midstBranch == c3d_null ); - if ( midstBranch == c3d_null ) + C3D_ASSERT( midstBranch == nullptr ); + if ( midstBranch == nullptr ) midstBranch = new MbCubeTree( dmType ); midstBranch->InitTree( midstArray, midstGabarit, direction, tier+1, 0 ); midstArray.clear(); @@ -945,18 +933,7 @@ inline void MbCubeTree::SetBranches( std::vectorGetCube(); - leafObjects.push_back( objects[i] ); - } - } -#endif } } } @@ -1033,18 +1010,7 @@ inline void MbCubeTree::FillLeaf( std::vectorGetCube(); - leafObjects.push_back( objects[i] ); - } - } -#endif } @@ -1054,9 +1020,9 @@ inline void MbCubeTree::FillLeaf( std::vector inline bool MbCubeTree::IsReady() const { - return ( (midstBranch != c3d_null) || - (lowerBranch != c3d_null) || - (upperBranch != c3d_null) || + return ( (midstBranch != nullptr) || + (lowerBranch != nullptr) || + (upperBranch != nullptr) || (leafObjects.size() > 0) ); } @@ -1069,11 +1035,11 @@ inline size_t MbCubeTree::Count() const { size_t cnt = leafObjects.size(); - if ( midstBranch != c3d_null ) + if ( midstBranch != nullptr ) cnt += midstBranch->Count(); - if ( lowerBranch != c3d_null ) + if ( lowerBranch != nullptr ) cnt += lowerBranch->Count(); - if ( upperBranch != c3d_null ) + if ( upperBranch != nullptr ) cnt += upperBranch->Count(); return cnt; @@ -1087,19 +1053,19 @@ template inline void MbCubeTree::GetContainsObjects( const Point & pnt, double epsilon, std::vector & items ) const { - if ( (lowerBranch != c3d_null) || (upperBranch != c3d_null) || (midstBranch != c3d_null) ) { + if ( (lowerBranch != nullptr) || (upperBranch != nullptr) || (midstBranch != nullptr) ) { double w = GetPointComponent( pnt ); if ( (w < (minimum - epsilon)) || ((maximum + epsilon) < w) ) return; // вне области / out of region - if ( (w < (midst + epsilon)) && (lowerBranch != c3d_null) ) { + if ( (w < (midst + epsilon)) && (lowerBranch != nullptr) ) { lowerBranch->GetContainsObjects( pnt, epsilon, items ); } - if ( ((midst - epsilon) < w) && (upperBranch != c3d_null) ) { + if ( ((midst - epsilon) < w) && (upperBranch != nullptr) ) { upperBranch->GetContainsObjects( pnt, epsilon, items ); } - if ( ((lower - epsilon) < w) && (w < (upper + epsilon)) && (midstBranch != c3d_null) ) { + if ( ((lower - epsilon) < w) && (w < (upper + epsilon)) && (midstBranch != nullptr) ) { midstBranch->GetContainsObjects( pnt, epsilon, items ); } } @@ -1108,7 +1074,7 @@ inline void MbCubeTree::GetContainsObjects( const Poi items.reserve( items.size() + iCount ); for ( size_t i = 0; i < iCount; ++i ) { const ItemIndex & obj = leafObjects[i]; - if ( obj.first != c3d_null ) { + if ( obj.first != nullptr ) { if ( obj.first->GetCube().Contains( pnt, epsilon ) ) items.push_back( obj.first ); } @@ -1124,19 +1090,19 @@ template inline void MbCubeTree::GetContainsObjects( const Point & pnt, double epsilon, std::vector & indices ) const { - if ( (lowerBranch != c3d_null) || (upperBranch != c3d_null) || (midstBranch != c3d_null) ) { + if ( (lowerBranch != nullptr) || (upperBranch != nullptr) || (midstBranch != nullptr) ) { double w = GetPointComponent( pnt ); if ( (w < (minimum - epsilon)) || ((maximum + epsilon) < w) ) return; // вне области / out of region - if ( (w < (midst + epsilon)) && (lowerBranch != c3d_null) ) { + if ( (w < (midst + epsilon)) && (lowerBranch != nullptr) ) { lowerBranch->GetContainsObjects( pnt, epsilon, indices ); } - if ( ((midst - epsilon) < w) && (upperBranch != c3d_null) ) { + if ( ((midst - epsilon) < w) && (upperBranch != nullptr) ) { upperBranch->GetContainsObjects( pnt, epsilon, indices ); } - if ( ((lower - epsilon) < w) && (w < (upper + epsilon)) && (midstBranch != c3d_null) ) { + if ( ((lower - epsilon) < w) && (w < (upper + epsilon)) && (midstBranch != nullptr) ) { midstBranch->GetContainsObjects( pnt, epsilon, indices ); } } @@ -1145,7 +1111,7 @@ inline void MbCubeTree::GetContainsObjects( const Poi indices.reserve( indices.size() + iCount ); for ( size_t i = 0; i < iCount; ++i ) { const ItemIndex & obj = leafObjects[i]; - if ( obj.first != c3d_null ) { + if ( obj.first != nullptr ) { if ( obj.first->GetCube().Contains( pnt, epsilon ) ) indices.push_back( obj.second ); } @@ -1162,20 +1128,20 @@ inline void MbCubeTree::GetIntersectObjects( const Cu std::vector & items, bool skipOwnself ) const { - if ( (lowerBranch != c3d_null) || (upperBranch != c3d_null) || (midstBranch != c3d_null) ) { + if ( (lowerBranch != nullptr) || (upperBranch != nullptr) || (midstBranch != nullptr) ) { double wMin, wMax; GetCubeMinMaxComponents( gabarit, 0.0, wMin, wMax ); if ( (wMax < minimum) || (maximum < wMin) ) return; // вне области / out of region - if ( (wMin < midst) && (lowerBranch != c3d_null) ) { + if ( (wMin < midst) && (lowerBranch != nullptr) ) { lowerBranch->GetIntersectObjects( gabarit, epsilon, items, skipOwnself ); } - if ( (midst < wMax) && (upperBranch != c3d_null) ) { + if ( (midst < wMax) && (upperBranch != nullptr) ) { upperBranch->GetIntersectObjects( gabarit, epsilon, items, skipOwnself ); } - if ( (lower < wMax) && (wMin < upper) && (midstBranch != c3d_null) ) { + if ( (lower < wMax) && (wMin < upper) && (midstBranch != nullptr) ) { midstBranch->GetIntersectObjects( gabarit, epsilon, items, skipOwnself ); } } @@ -1184,7 +1150,7 @@ inline void MbCubeTree::GetIntersectObjects( const Cu items.reserve( items.size() + iCount ); for ( size_t i = 0; i < iCount; ++i ) { const ItemIndex & obj = leafObjects[i]; - if ( obj.first != c3d_null ) { + if ( obj.first != nullptr ) { if ( !skipOwnself || (&gabarit != &static_cast(obj.first->GetCube()) ) ) { // KOMPAS-20871 if ( obj.first->GetCube().Intersect( gabarit, epsilon ) ) items.push_back( obj.first ); @@ -1203,20 +1169,20 @@ inline void MbCubeTree::GetIntersectObjects( const Cu std::vector & items, bool skipOwnself ) const { - if ( (lowerBranch != c3d_null) || (upperBranch != c3d_null) || (midstBranch != c3d_null) ) { + if ( (lowerBranch != nullptr) || (upperBranch != nullptr) || (midstBranch != nullptr) ) { double wMin, wMax; GetCubeMinMaxComponents( gabarit, 0.0, wMin, wMax ); if ( (wMax < minimum) || (maximum < wMin) ) return; // вне области / out of region - if ( (wMin < midst) && (lowerBranch != c3d_null) ) { + if ( (wMin < midst) && (lowerBranch != nullptr) ) { lowerBranch->GetIntersectObjects( gabarit, epsilon, items, skipOwnself ); } - if ( (midst < wMax) && (upperBranch != c3d_null) ) { + if ( (midst < wMax) && (upperBranch != nullptr) ) { upperBranch->GetIntersectObjects( gabarit, epsilon, items, skipOwnself ); } - if ( (lower < wMax) && (wMin < upper) && (midstBranch != c3d_null) ) { + if ( (lower < wMax) && (wMin < upper) && (midstBranch != nullptr) ) { midstBranch->GetIntersectObjects( gabarit, epsilon, items, skipOwnself ); } } @@ -1225,7 +1191,7 @@ inline void MbCubeTree::GetIntersectObjects( const Cu items.reserve( items.size() + iCount ); for ( size_t i = 0; i < iCount; ++i ) { const ItemIndex & obj = leafObjects[i]; - if ( obj.first != c3d_null ) { + if ( obj.first != nullptr ) { if ( !skipOwnself || (&gabarit != &static_cast(obj.first->GetCube()) ) ) { // KOMPAS-20871 if ( obj.first->GetCube().Intersect( gabarit, epsilon ) ) items.push_back( obj.second ); @@ -1243,7 +1209,7 @@ template inline void MbCubeTree::GetIntersectObjects( const Point & rayPnt1, const Point & rayPnt2, double eps, std::vector & itemIndices ) const { - bool isBranch = (lowerBranch != c3d_null) || (upperBranch != c3d_null) || (midstBranch != c3d_null); + bool isBranch = (lowerBranch != nullptr) || (upperBranch != nullptr) || (midstBranch != nullptr); bool isLeaf = !leafObjects.empty(); @@ -1300,13 +1266,13 @@ inline void MbCubeTree::GetIntersectObjects( const Po if ( (wMax < (minimum - eps)) || ((maximum + eps) < wMin) ) return; // вне области / out of region - if ( (wMin < (midst + eps)) && (lowerBranch != c3d_null) ) { + if ( (wMin < (midst + eps)) && (lowerBranch != nullptr) ) { lowerBranch->GetIntersectObjects( segmPnt1, segmPnt2, eps, itemIndices ); } - if ( (wMax > (midst - eps)) && (upperBranch != c3d_null) ) { + if ( (wMax > (midst - eps)) && (upperBranch != nullptr) ) { upperBranch->GetIntersectObjects( segmPnt1, segmPnt2, eps, itemIndices ); } - if ( (wMax > (lower - eps)) && (wMin < (upper + eps)) && (midstBranch != c3d_null) ) { + if ( (wMax > (lower - eps)) && (wMin < (upper + eps)) && (midstBranch != nullptr) ) { midstBranch->GetIntersectObjects( segmPnt1, segmPnt2, eps, itemIndices ); } } @@ -1322,7 +1288,7 @@ inline void MbCubeTree::GetIntersectObjects( const Po itemIndices.reserve( itemIndices.size() + iCount ); for ( size_t i = 0; i < iCount; ++i ) { const ItemIndex & obj = leafObjects[i]; - if ( obj.first != c3d_null ) { + if ( obj.first != nullptr ) { bool add = false; const Cube & objCube = obj.first->GetCube(); @@ -1384,27 +1350,27 @@ inline double MbCubeTree::GetDistance( const Type & o template inline void MbCubeTree::FindNearestObject( const Cube & gabarit, double & distance, const Type *& item, double eps ) const { - if ( (lowerBranch != c3d_null) || (upperBranch != c3d_null) || (midstBranch != c3d_null) ) { + if ( (lowerBranch != nullptr) || (upperBranch != nullptr) || (midstBranch != nullptr) ) { double wMin, wMax; GetCubeMinMaxComponents( gabarit, 0.0, wMin, wMax ); if ( (wMax < (minimum-distance)) || ((maximum+distance) < wMin) ) return; // вне области / out of region - if ( (wMin < (midst+distance)) && (lowerBranch != c3d_null) ) { + if ( (wMin < (midst+distance)) && (lowerBranch != nullptr) ) { lowerBranch->FindNearestObject( gabarit, distance, item, eps ); } - if ( ((midst-distance) < wMax) && (upperBranch != c3d_null) ) { + if ( ((midst-distance) < wMax) && (upperBranch != nullptr) ) { upperBranch->FindNearestObject( gabarit, distance, item, eps ); } - if ( ((lower-distance) < wMax) && (wMin < (upper+distance)) && (midstBranch != c3d_null) ) { + if ( ((lower-distance) < wMax) && (wMin < (upper+distance)) && (midstBranch != nullptr) ) { midstBranch->FindNearestObject( gabarit, distance, item, eps ); } } else { // содержимое конечной ветви // terminal branch content for ( size_t i = 0, iCount = leafObjects.size(); i < iCount; ++i ) { const ItemIndex & obj = leafObjects[i]; - if ( obj.first != c3d_null ) { + if ( obj.first != nullptr ) { double d = obj.first->GetCube().DistanceToCube( gabarit, eps ); if ( distance > d - eps ) { item = obj.first; @@ -1422,27 +1388,27 @@ inline void MbCubeTree::FindNearestObject( const Cube template inline void MbCubeTree::FindNearestObject( const Cube & gabarit, double & distance, size_t & index, double eps ) const { - if ( (lowerBranch != c3d_null) || (upperBranch != c3d_null) || (midstBranch != c3d_null) ) { + if ( (lowerBranch != nullptr) || (upperBranch != nullptr) || (midstBranch != nullptr) ) { double wMin, wMax; GetCubeMinMaxComponents( gabarit, 0.0, wMin, wMax ); if ( (wMax < (minimum-distance)) || ((maximum+distance) < wMin) ) return; // вне области / out of region - if ( (wMin < (midst+distance)) && (lowerBranch != c3d_null) ) { + if ( (wMin < (midst+distance)) && (lowerBranch != nullptr) ) { lowerBranch->FindNearestObject( gabarit, distance, index, eps ); } - if ( ((midst-distance) < wMax) && (upperBranch != c3d_null) ) { + if ( ((midst-distance) < wMax) && (upperBranch != nullptr) ) { upperBranch->FindNearestObject( gabarit, distance, index, eps ); } - if ( ((lower-distance) < wMax) && (wMin < (upper+distance)) && (midstBranch != c3d_null) ) { + if ( ((lower-distance) < wMax) && (wMin < (upper+distance)) && (midstBranch != nullptr) ) { midstBranch->FindNearestObject( gabarit, distance, index, eps ); } } else { // содержимое конечной ветви // terminal branch content for ( size_t i = 0, iCount = leafObjects.size(); i < iCount; ++i ) { const ItemIndex & obj = leafObjects[i]; - if ( obj.first != c3d_null ) { + if ( obj.first != nullptr ) { double d = obj.first->GetCube().DistanceToCube( gabarit, eps ); if ( distance > d - eps ) { index = obj.second; @@ -1462,27 +1428,27 @@ inline void MbCubeTree::GetNearestObjects( const Cube std::vector & itemDistances, double eps ) const { - if ( (lowerBranch != c3d_null) || (upperBranch != c3d_null) || (midstBranch != c3d_null) ) { + if ( (lowerBranch != nullptr) || (upperBranch != nullptr) || (midstBranch != nullptr) ) { double wMin, wMax; GetCubeMinMaxComponents( gabarit, 0.0, wMin, wMax ); if ( (wMax < (minimum-distance)) || ((maximum+distance) < wMin) ) return; // вне области / out of region - if ( (wMin < (midst+distance)) && (lowerBranch != c3d_null) ) { + if ( (wMin < (midst+distance)) && (lowerBranch != nullptr) ) { lowerBranch->GetNearestObjects( gabarit, distance, itemDistances, eps ); } - if ( ((midst-distance) < wMax) && (upperBranch != c3d_null) ) { + if ( ((midst-distance) < wMax) && (upperBranch != nullptr) ) { upperBranch->GetNearestObjects( gabarit, distance, itemDistances, eps ); } - if ( ((lower-distance) < wMax) && (wMin < (upper+distance)) && (midstBranch != c3d_null) ) { + if ( ((lower-distance) < wMax) && (wMin < (upper+distance)) && (midstBranch != nullptr) ) { midstBranch->GetNearestObjects( gabarit, distance, itemDistances, eps ); } } else { // содержимое конечной ветви // terminal branch content for ( size_t i = 0, iCount = leafObjects.size(); i < iCount; ++i ) { const ItemIndex & obj = leafObjects[i]; - if ( obj.first != c3d_null ) { + if ( obj.first != nullptr ) { double d = obj.first->GetCube().DistanceToCube( gabarit, eps ); if ( distance > d - eps ) { IndexDistance itemDistance( obj.second, d ); @@ -1500,26 +1466,26 @@ inline void MbCubeTree::GetNearestObjects( const Cube template inline void MbCubeTree::FindNearestObject( const Point & pnt, double & distance, const Type *& item, double eps ) const { - if ( (lowerBranch != c3d_null) || (upperBranch != c3d_null) || (midstBranch != c3d_null) ) { + if ( (lowerBranch != nullptr) || (upperBranch != nullptr) || (midstBranch != nullptr) ) { double w = GetPointComponent( pnt ); if ( (w < (minimum-distance)) || ((maximum+distance) < w) ) return; // вне области / out of region - if ( (w < (midst+distance)) && (lowerBranch != c3d_null) ) { + if ( (w < (midst+distance)) && (lowerBranch != nullptr) ) { lowerBranch->FindNearestObject( pnt, distance, item, eps ); } - if ( ((midst-distance) < w) && (upperBranch != c3d_null) ) { + if ( ((midst-distance) < w) && (upperBranch != nullptr) ) { upperBranch->FindNearestObject( pnt, distance, item, eps ); } - if ( ((lower-distance) < w) && (w < (upper+distance)) && (midstBranch != c3d_null) ) { + if ( ((lower-distance) < w) && (w < (upper+distance)) && (midstBranch != nullptr) ) { midstBranch->FindNearestObject( pnt, distance, item, eps ); } } else { // содержимое конечной ветви // terminal branch content for ( size_t i = 0, iCount = leafObjects.size(); i < iCount; ++i ) { const ItemIndex & obj = leafObjects[i]; - if ( obj.first != c3d_null ) { + if ( obj.first != nullptr ) { double d = GetDistance( *obj.first, pnt, false ); if ( distance > d - eps ) { item = obj.first; @@ -1537,26 +1503,26 @@ inline void MbCubeTree::FindNearestObject( const Poin template inline void MbCubeTree::FindNearestObject( const Point & pnt, double & distance, size_t & index, double eps ) const { - if ( (lowerBranch != c3d_null) || (upperBranch != c3d_null) || (midstBranch != c3d_null) ) { + if ( (lowerBranch != nullptr) || (upperBranch != nullptr) || (midstBranch != nullptr) ) { double w = GetPointComponent( pnt ); if ( (w < (minimum-distance)) || ((maximum+distance) < w) ) return; // вне области / out of region - if ( (w < (midst+distance)) && (lowerBranch != c3d_null) ) { + if ( (w < (midst+distance)) && (lowerBranch != nullptr) ) { lowerBranch->FindNearestObject( pnt, distance, index, eps ); } - if ( ((midst-distance) < w) && (upperBranch != c3d_null) ) { + if ( ((midst-distance) < w) && (upperBranch != nullptr) ) { upperBranch->FindNearestObject( pnt, distance, index, eps ); } - if ( ((lower-distance) < w) && (w < (upper+distance)) && (midstBranch != c3d_null) ) { + if ( ((lower-distance) < w) && (w < (upper+distance)) && (midstBranch != nullptr) ) { midstBranch->FindNearestObject( pnt, distance, index, eps ); } } else { // содержимое конечной ветви // terminal branch content for ( size_t i = 0, iCount = leafObjects.size(); i < iCount; ++i ) { const ItemIndex & obj = leafObjects[i]; - if ( obj.first != c3d_null ) { + if ( obj.first != nullptr ) { double d = GetDistance( *obj.first, pnt, false ); if ( distance > d - eps ) { index = obj.second; @@ -1576,19 +1542,19 @@ inline void MbCubeTree::GetNearestObjects( const Poin std::vector & itemDistances, double eps ) const { - if ( (lowerBranch != c3d_null) || (upperBranch != c3d_null) || (midstBranch != c3d_null) ) { + if ( (lowerBranch != nullptr) || (upperBranch != nullptr) || (midstBranch != nullptr) ) { double w = GetPointComponent( pnt ); if ( (w < (minimum-distance)) || ((maximum+distance) < w) ) return; // вне области / out of region - if ( (w < (midst+distance)) && (lowerBranch != c3d_null) ) { + if ( (w < (midst+distance)) && (lowerBranch != nullptr) ) { lowerBranch->GetNearestObjects( pnt, distance, itemDistances, eps ); } - if ( ((midst-distance) < w) && (upperBranch != c3d_null) ) { + if ( ((midst-distance) < w) && (upperBranch != nullptr) ) { upperBranch->GetNearestObjects( pnt, distance, itemDistances, eps ); } - if ( ((lower-distance) < w) && (w < (upper+distance)) && (midstBranch != c3d_null) ) { + if ( ((lower-distance) < w) && (w < (upper+distance)) && (midstBranch != nullptr) ) { midstBranch->GetNearestObjects( pnt, distance, itemDistances, eps ); } } @@ -1597,7 +1563,7 @@ inline void MbCubeTree::GetNearestObjects( const Poin itemDistances.reserve( itemDistances.size() + iCount ); for ( size_t i = 0; i < iCount; ++i ) { const ItemIndex & obj = leafObjects[i]; - if ( obj.first != c3d_null ) { + if ( obj.first != nullptr ) { double d = GetDistance( *obj.first, pnt, true ); if ( distance > d - eps ) { ItemDistance itemDistance( obj.first, d ); @@ -1617,19 +1583,19 @@ inline void MbCubeTree::GetNearestObjects( const Poin std::vector & itemDistances, double eps ) const { - if ( (lowerBranch != c3d_null) || (upperBranch != c3d_null) || (midstBranch != c3d_null) ) { + if ( (lowerBranch != nullptr) || (upperBranch != nullptr) || (midstBranch != nullptr) ) { double w = GetPointComponent( pnt ); if ( (w < (minimum-distance)) || ((maximum+distance) < w) ) return; // вне области / out of region - if ( (w < (midst+distance)) && (lowerBranch != c3d_null) ) { + if ( (w < (midst+distance)) && (lowerBranch != nullptr) ) { lowerBranch->GetNearestObjects( pnt, distance, itemDistances, eps ); } - if ( ((midst-distance) < w) && (upperBranch != c3d_null) ) { + if ( ((midst-distance) < w) && (upperBranch != nullptr) ) { upperBranch->GetNearestObjects( pnt, distance, itemDistances, eps ); } - if ( ((lower-distance) < w) && (w < (upper+distance)) && (midstBranch != c3d_null) ) { + if ( ((lower-distance) < w) && (w < (upper+distance)) && (midstBranch != nullptr) ) { midstBranch->GetNearestObjects( pnt, distance, itemDistances, eps ); } } @@ -1638,7 +1604,7 @@ inline void MbCubeTree::GetNearestObjects( const Poin itemDistances.reserve( itemDistances.size() + iCount ); for ( size_t i = 0; i < iCount; ++i ) { const ItemIndex & obj = leafObjects[i]; - if ( obj.first != c3d_null ) { + if ( obj.first != nullptr ) { double d = GetDistance( *obj.first, pnt, true ); if ( distance > d - eps ) { IndexDistance itemDistance( obj.second, d ); @@ -1658,19 +1624,19 @@ inline void MbCubeTree::GetNearestObjects( const Poin std::vector & itemIndices, double eps ) const { - if ( (lowerBranch != c3d_null) || (upperBranch != c3d_null) || (midstBranch != c3d_null) ) { + if ( (lowerBranch != nullptr) || (upperBranch != nullptr) || (midstBranch != nullptr) ) { double w = GetPointComponent( pnt ); if ( (w < (minimum-distance)) || ((maximum+distance) < w) ) return; // вне области / out of region - if ( (w < (midst+distance)) && (lowerBranch != c3d_null) ) { + if ( (w < (midst+distance)) && (lowerBranch != nullptr) ) { lowerBranch->GetNearestObjects( pnt, distance, itemIndices, eps ); } - if ( ((midst-distance) < w) && (upperBranch != c3d_null) ) { + if ( ((midst-distance) < w) && (upperBranch != nullptr) ) { upperBranch->GetNearestObjects( pnt, distance, itemIndices, eps ); } - if ( ((lower-distance) < w) && (w < (upper+distance)) && (midstBranch != c3d_null) ) { + if ( ((lower-distance) < w) && (w < (upper+distance)) && (midstBranch != nullptr) ) { midstBranch->GetNearestObjects( pnt, distance, itemIndices, eps ); } } @@ -1679,7 +1645,7 @@ inline void MbCubeTree::GetNearestObjects( const Poin itemIndices.reserve( itemIndices.size() + iCount ); for ( size_t i = 0; i < iCount; ++i ) { const ItemIndex & obj = leafObjects[i]; - if ( obj.first != c3d_null ) { + if ( obj.first != nullptr ) { double d = GetDistance( *obj.first, pnt, true ); if ( distance > d - eps ) { itemIndices.push_back( obj.second ); diff --git a/C3d/Include/mb_data.h b/C3d/Include/mb_data.h index d291b70..0d0dcb7 100644 --- a/C3d/Include/mb_data.h +++ b/C3d/Include/mb_data.h @@ -573,7 +573,7 @@ public: clothoidLMax( 200.0 ), clothoidSegms( 10 ), numberOfIterationsBSpl( 500 ), numberOfIterationsVCurve( 192 ), #ifdef C3D_DEBUG_FAIR_CURVES - prt( c3d_null ), + prt( nullptr ), #endif realAccuracyBSpl( METRIC_ACCURACY ), realAccuracyVCurve( METRIC_EPSILON ), switchEndTangents( false ), switchEndCurvature( false ), diff --git a/C3d/Include/mb_dimension.h b/C3d/Include/mb_dimension.h index 70a5bd6..50897cb 100644 --- a/C3d/Include/mb_dimension.h +++ b/C3d/Include/mb_dimension.h @@ -83,12 +83,12 @@ public: \en \name Common functions of a geometric object. \{ */ virtual MbeSpaceType IsA() const; - virtual MbSpaceItem & Duplicate(MbRegDuplicate * = c3d_null) const; + virtual MbSpaceItem & Duplicate(MbRegDuplicate * = nullptr) const; virtual bool IsSame(const MbSpaceItem & /*other*/, double /*accuracy*/ = LENGTH_EPSILON) const; virtual bool SetEqual(const MbSpaceItem &); - virtual void Transform(const MbMatrix3D &, MbRegTransform * = c3d_null); - virtual void Move(const MbVector3D &, MbRegTransform * = c3d_null); - virtual void Rotate(const MbAxis3D &, double, MbRegTransform * = c3d_null); + virtual void Transform(const MbMatrix3D &, MbRegTransform * = nullptr); + virtual void Move(const MbVector3D &, MbRegTransform * = nullptr); + virtual void Rotate(const MbAxis3D &, double, MbRegTransform * = nullptr); virtual double DistanceToPoint(const MbCartPoint3D &) const; virtual void AddYourGabaritTo(MbCube &) const; virtual void CalculateMesh( const MbStepData & stepData, const MbFormNote & note, MbMesh & mesh ) const; // \ru Построить полигональную копию mesh. \en Build polygonal copy mesh. @@ -155,12 +155,12 @@ public: \en \name Common functions of a geometric object. \{ */ virtual MbeSpaceType IsA() const; - virtual MbSpaceItem & Duplicate(MbRegDuplicate * = c3d_null) const; + virtual MbSpaceItem & Duplicate(MbRegDuplicate * = nullptr) const; virtual bool IsSame(const MbSpaceItem & /*other*/, double /*accuracy*/ = LENGTH_EPSILON) const; virtual bool SetEqual(const MbSpaceItem &); - virtual void Transform(const MbMatrix3D &, MbRegTransform * = c3d_null); - virtual void Move(const MbVector3D &, MbRegTransform * = c3d_null); - virtual void Rotate(const MbAxis3D &, double, MbRegTransform * = c3d_null); + virtual void Transform(const MbMatrix3D &, MbRegTransform * = nullptr); + virtual void Move(const MbVector3D &, MbRegTransform * = nullptr); + virtual void Rotate(const MbAxis3D &, double, MbRegTransform * = nullptr); virtual double DistanceToPoint(const MbCartPoint3D &) const; virtual void AddYourGabaritTo(MbCube &) const; virtual void CalculateMesh( const MbStepData & stepData, const MbFormNote & note, MbMesh & mesh ) const; // \ru Построить полигональную копию mesh. \en Build polygonal copy mesh. @@ -231,12 +231,12 @@ public: \en \name Common functions of a geometric object. \{ */ virtual MbeSpaceType IsA() const; - virtual MbSpaceItem & Duplicate(MbRegDuplicate * = c3d_null) const; + virtual MbSpaceItem & Duplicate(MbRegDuplicate * = nullptr) const; virtual bool IsSame(const MbSpaceItem & /*other*/, double /*accuracy*/ = LENGTH_EPSILON) const; virtual bool SetEqual(const MbSpaceItem &); - virtual void Transform(const MbMatrix3D &, MbRegTransform * = c3d_null); - virtual void Move(const MbVector3D &, MbRegTransform * = c3d_null); - virtual void Rotate(const MbAxis3D &, double, MbRegTransform * = c3d_null); + virtual void Transform(const MbMatrix3D &, MbRegTransform * = nullptr); + virtual void Move(const MbVector3D &, MbRegTransform * = nullptr); + virtual void Rotate(const MbAxis3D &, double, MbRegTransform * = nullptr); virtual double DistanceToPoint(const MbCartPoint3D &) const; virtual void AddYourGabaritTo(MbCube &) const; virtual void CalculateMesh( const MbStepData & stepData, const MbFormNote & note, MbMesh & mesh ) const; // \ru Построить полигональную копию mesh. \en Build polygonal copy mesh. diff --git a/C3d/Include/mb_matrixnn.h b/C3d/Include/mb_matrixnn.h index 4e056f9..ca93772 100644 --- a/C3d/Include/mb_matrixnn.h +++ b/C3d/Include/mb_matrixnn.h @@ -29,12 +29,12 @@ private : protected: /// \ru Конструктор. \en Constructor. - MatrixNN() : parr( c3d_null ), n( 0 ) {} + MatrixNN() : parr( nullptr ), n( 0 ) {} /// \ru Конструктор по заданной размерности. \en The constructor by a given dimension. - MatrixNN( size_t dim ) : parr( c3d_null ), n( 0 ) { SetSize( dim ); } + MatrixNN( size_t dim ) : parr( nullptr ), n( 0 ) { SetSize( dim ); } public: /// \ru Конструктор ограниченной размерности. \en The constructor of restricted dimension. - MatrixNN ( const uint16 & dim ) : parr( c3d_null ), n( 0 ) { SetSize( dim ); } + MatrixNN ( const uint16 & dim ) : parr( nullptr ), n( 0 ) { SetSize( dim ); } /// \ru Конструктор копирования. \en The copy constructor. explicit MatrixNN ( const MatrixNN & ); /// \ru Деструктор. \en Destructor. @@ -116,10 +116,10 @@ private: */ // --- template -MbeNewtonResult TypedGaussEquation ( MatrixNN & a, Type * b, double epsilon, ProgressBarWrapper * baseProgBar = c3d_null ) +MbeNewtonResult TypedGaussEquation ( MatrixNN & a, Type * b, double epsilon, ProgressBarWrapper * baseProgBar = nullptr ) { - ProgressBarWrapper * progBar = c3d_null; - if ( baseProgBar != c3d_null ) { + ProgressBarWrapper * progBar = nullptr; + if ( baseProgBar != nullptr ) { StrData strData( pbarId_Solve_LinearEquationsSystem ); progBar = &baseProgBar->CreateChildAddRef( strData ); } @@ -254,10 +254,10 @@ MbeNewtonResult TypedGaussEquation ( MatrixNN & a, Type * b, double epsilon, Pro */ // --- template -MbeNewtonResult TypedGaussEquationWithBandMatrix( SparseMatrix & a, Type * b, double epsilon, ProgressBarWrapper * baseProgBar = c3d_null ) +MbeNewtonResult TypedGaussEquationWithBandMatrix( SparseMatrix & a, Type * b, double epsilon, ProgressBarWrapper * baseProgBar = nullptr ) { - ProgressBarWrapper * progBar = c3d_null; - if ( baseProgBar != c3d_null ) { + ProgressBarWrapper * progBar = nullptr; + if ( baseProgBar != nullptr ) { StrData strData( pbarId_Solve_LinearEquationsSystem ); progBar = &baseProgBar->CreateChildAddRef( strData ); } diff --git a/C3d/Include/mb_nurbs_function.h b/C3d/Include/mb_nurbs_function.h index 5f0fa0b..49a38af 100644 --- a/C3d/Include/mb_nurbs_function.h +++ b/C3d/Include/mb_nurbs_function.h @@ -480,7 +480,7 @@ bool IsValidNurbsParamsExt( size_t degree, bool closed, size_t pcnt, template bool IsValidNurbsParamsExt( size_t degree, bool closed, const PointVector & pnts, const DoubleVector * wts, - const DoubleVector * knots = c3d_null ) + const DoubleVector * knots = nullptr ) { // \ru 1. Порядок B-сплайна должен быть не менее 2. \en 1. The order of B-spline must be at least 2. // \ru 2а. Для незамкнутой кривой количество точек не меньше порядка сплайна. \en 2a. The number of open curve points isn't less than the order of spline. @@ -491,10 +491,10 @@ bool IsValidNurbsParamsExt( size_t degree, bool closed, const PointVector & pnts size_t pcnt = pnts.size(); bool res = ::IsValidNurbsParams( degree, closed, pcnt ) && - ( (wts == c3d_null) || (wts->size() == pcnt) ) && - ( (knots == c3d_null) || (knots->size() == (degree + pcnt + (closed ? (degree - 1) : 0))) ); + ( (wts == nullptr) || (wts->size() == pcnt) ) && + ( (knots == nullptr) || (knots->size() == (degree + pcnt + (closed ? (degree - 1) : 0))) ); - if ( res && (knots != c3d_null) ) { + if ( res && (knots != nullptr) ) { if ( !c3d::IsMonotonic( *knots, true, true ) ) res = false; // SD#7118498 } @@ -690,7 +690,7 @@ bool DefineKnotsVector( size_t degree, double knot = 0.0; - if ( (paramsPtr == c3d_null) || (*paramsPtr).empty() ) { + if ( (paramsPtr == nullptr) || (*paramsPtr).empty() ) { for ( size_t i = 0; i < knotsCount; ++i ) { if ( closed ) // Замкнутый В-сплайн. knot = (double)(ptrdiff_t)(i - degree + 1); @@ -937,14 +937,14 @@ template void CurveDeriveCpts( ptrdiff_t p, const KnotsVector & U, const Point * P, const double * W, size_t pointCount, const NurbsVector * PW, ptrdiff_t d, ptrdiff_t r1, ptrdiff_t r2, NurbsVector * PK ) { - C3D_ASSERT( (P != c3d_null && W != c3d_null) != (PW != c3d_null) ); + C3D_ASSERT( (P != nullptr && W != nullptr) != (PW != nullptr) ); ptrdiff_t r = ( r2 - r1 ); ptrdiff_t degree = ( p + 1 ); ptrdiff_t i, k, icount; NurbsVector & PK0 = PK[0]; - if ( PW != c3d_null ) { + if ( PW != nullptr ) { for ( i = 0; i <= r; i++ ) PK0.Set( i, *PW, (r1 + i) ); } @@ -987,14 +987,14 @@ template void CurveDeriveCpts( ptrdiff_t p, const KnotsVector & U, const Point * P, const double w, size_t pointCount, const NurbsVector * PW, ptrdiff_t d, ptrdiff_t r1, ptrdiff_t r2, NurbsVector * PK ) { - C3D_ASSERT( (P != c3d_null) != (PW != c3d_null) ); + C3D_ASSERT( (P != nullptr) != (PW != nullptr) ); ptrdiff_t r = ( r2 - r1 ); ptrdiff_t degree = ( p + 1 ); ptrdiff_t i, k, icount; NurbsVector & PK0 = PK[0]; - if ( PW != c3d_null ) { + if ( PW != nullptr ) { for ( i = 0; i <= r; i++ ) PK0.Set( i, *PW, (r1 + i) ); } @@ -1037,16 +1037,16 @@ template void CurveDeriveCpts( ptrdiff_t p, const KnotsVector & U, const Point * P, const double * W, size_t pointCount, const NurbsVector * PW, ptrdiff_t d, ptrdiff_t r1, ptrdiff_t r2, DoubleTriple ** DT, double ** WT ) { - C3D_ASSERT( ( P != c3d_null && W != c3d_null ) != ( PW != c3d_null ) ); + C3D_ASSERT( ( P != nullptr && W != nullptr ) != ( PW != nullptr ) ); ptrdiff_t r = ( r2 - r1 ); ptrdiff_t degree = ( p + 1 ); ptrdiff_t i, k, icount; DoubleTriple * DT0 = DT[0]; double * WT0 = WT[0]; - bool useWeight = WT0 != c3d_null; + bool useWeight = WT0 != nullptr; - if ( PW != c3d_null ) { + if ( PW != nullptr ) { if ( !useWeight ) { for ( i = 0; i <= r; i++ ) DT0[i].Init( (*PW)[r1 + i] ); @@ -1074,8 +1074,8 @@ void CurveDeriveCpts( ptrdiff_t p, const KnotsVector & U, const Point * P, const } } - double * WTMin = c3d_null; - double * WTPls = c3d_null; + double * WTMin = nullptr; + double * WTPls = nullptr; for ( k = 1; k <= d; k++ ) { DoubleTriple * DTMin = DT[k - 1]; DoubleTriple * DTPls = DT[k]; @@ -1109,16 +1109,16 @@ template void CurveDeriveCpts( ptrdiff_t p, const KnotsVector & U, const Point * P, const double w, size_t pointCount, const NurbsVector * PW, ptrdiff_t d, ptrdiff_t r1, ptrdiff_t r2, DoubleTriple ** DT, double ** WT ) { - C3D_ASSERT( ( P != c3d_null ) != ( PW != c3d_null ) ); + C3D_ASSERT( ( P != nullptr ) != ( PW != nullptr ) ); ptrdiff_t r = ( r2 - r1 ); ptrdiff_t degree = ( p + 1 ); ptrdiff_t i, k, icount; DoubleTriple * DT0 = DT[0]; double * WT0 = WT[0]; - bool useWeight = WT0 != c3d_null; + bool useWeight = WT0 != nullptr; - if ( PW != c3d_null ) { + if ( PW != nullptr ) { if ( !useWeight ) { for ( i = 0; i <= r; i++ ) DT0[i].Init( (*PW)[r1 + i] ); @@ -1147,8 +1147,8 @@ void CurveDeriveCpts( ptrdiff_t p, const KnotsVector & U, const Point * P, const } } - double * WTMin = c3d_null; - double * WTPls = c3d_null; + double * WTMin = nullptr; + double * WTPls = nullptr; for ( k = 1; k <= d; k++ ) { DoubleTriple * DTMin = DT[k - 1]; DoubleTriple * DTPls = DT[k]; @@ -1188,7 +1188,7 @@ void CurveDeriveCpts( ptrdiff_t p, const double * U, const Point * P, const doub for ( i = 0; i <= r; i++ ) { k = ( (r1 + i) % pointCount ); - if ( W != c3d_null ) + if ( W != nullptr ) H0[i].Init( P[k], W[k] ); else H0[i].Init( P[k], 1.0 ); @@ -1345,7 +1345,7 @@ MbeNewtonResult CalculatePointList( const ParamsVector & params, DPtr matrixPtr( MatrixNN::Create(pointsCount) ); // \ru Матрица системы уравнений для прохождения NURBS при params[i] через points[i] \en Matrix of equation system for constructing the NURBS-curve passing through the points[i] with params[i] - if ( matrixPtr != c3d_null && ::IsValidNurbsParamsExt(degree, closed, pointList.size(), knots) ) { + if ( matrixPtr != nullptr && ::IsValidNurbsParamsExt(degree, closed, pointList.size(), knots) ) { MatrixNN & matrix = *matrixPtr; c3d::DoubleVector bSplines; // \ru Ненулевые B-сплайны \en Non-zero B-splines @@ -1406,7 +1406,7 @@ MbeNewtonResult CalculatePointListWithBandMatrix( const ParamsVector & params // \ru Матрица системы уравнений для прохождения NURBS при params[i] через points[i]. \en Matrix of equation system for constructing the NURBS-curve passing through the points[i] with params[i]. DPtr< SparseArray2 > matrixPtr( SparseArray2::Create( pointsCount, pointsCount ) ); - if ( matrixPtr != c3d_null && ::IsValidNurbsParamsExt( degree, closed, pointList.size(), knots ) ) { + if ( matrixPtr != nullptr && ::IsValidNurbsParamsExt( degree, closed, pointList.size(), knots ) ) { SparseArray2 & matrix = *matrixPtr; c3d::DoubleVector bSplines; // \ru Ненулевые B-сплайны. \en Non-zero B-splines. @@ -1768,9 +1768,9 @@ bool AttachNurbsG2( TypedNurbs & nurbs, // \ru Модифицируемы // \ru Сохраняем вычисленные производные \en Save the calculated derivatives if ( res ) { - if ( wDiff1 != c3d_null ) + if ( wDiff1 != nullptr ) *wDiff1 = weightDiff1; - if ( wDiff2 != c3d_null && res ) + if ( wDiff2 != nullptr && res ) *wDiff2 = weightDiff2; } @@ -2416,7 +2416,7 @@ MATH_FUNC (bool) CreateNurbsLSMClosed( SPtr & nurbs, // \ru Мод const ptrdiff_t pCount, const PointsVector & aPoints, const DoubleVector & aKnots, - const DoubleVector * aParams = c3d_null ); + const DoubleVector * aParams = nullptr ); //------------------------------------------------------------------------------ @@ -2447,7 +2447,7 @@ MATH_FUNC (bool) CreateNurbsLSM( SPtr & nurbs, // \ru Модифи const ptrdiff_t pCount, const PointsVector & aPoints, const DoubleVector & aKnots, - const DoubleVector * aParams = c3d_null ); + const DoubleVector * aParams = nullptr ); //------------------------------------------------------------------------------- @@ -2457,7 +2457,7 @@ template Nurbs * CreateLineOutRgn( const Curve & curve, double tn1, double tn2, double t1, double t2, const MbCurveIntoNurbsInfo & nci ) { - Nurbs * nurbs = c3d_null; + Nurbs * nurbs = nullptr; if ( !curve.IsClosed() && nci.ExtendRange() && ((tn2 - tn1) > Math::paramEpsilon) ) { SArray points ( 2, 1 ); diff --git a/C3d/Include/mb_placement3d.h b/C3d/Include/mb_placement3d.h index 0f4a31c..b802508 100644 --- a/C3d/Include/mb_placement3d.h +++ b/C3d/Include/mb_placement3d.h @@ -393,7 +393,7 @@ public: /** \} /// \ru Пересчитать СК по измененным внутренним данным. \en Recalculate the coordinate system for changed internal data. void Reset (); /// \ru Инвертировать. \en Invert. - void Invert( MbMatrix * = c3d_null ); + void Invert( MbMatrix * = nullptr ); /// \ru Найти ближайшую точку пересечения с линией. \en Find the nearest point of intersection with line. bool LineIntersectionPoint( const MbCartPoint3D & pc, const MbVector3D & axis, MbCartPoint3D & p, double & d, double eps = ANGLE_EPSILON ) const; diff --git a/C3d/Include/mb_point_mating.h b/C3d/Include/mb_point_mating.h index dbd395b..946a360 100644 --- a/C3d/Include/mb_point_mating.h +++ b/C3d/Include/mb_point_mating.h @@ -108,10 +108,10 @@ private: // \ru не реализовано \en not implemented template MbPntMatingData::MbPntMatingData() : MbRefItem ( ) - , tangent ( c3d_null ) - , tangentDer1 ( c3d_null ) - , tangentDer2 ( c3d_null ) - , changedPnts ( c3d_null ) + , tangent ( nullptr ) + , tangentDer1 ( nullptr ) + , tangentDer2 ( nullptr ) + , changedPnts ( nullptr ) , type ( trt_Position ) , movePnts ( false ) , attach ( false ) @@ -132,9 +132,9 @@ MbPntMatingData::MbPntMatingData( const MbeMatingType nType, bool nAttach ) : MbRefItem ( ) , type ( nType ) - , tangent ( (nTang != c3d_null) ? new Vector( *nTang ) : c3d_null ) - , tangentDer1 ( (nTangDer1 != c3d_null) ? new Vector( *nTangDer1 ) : c3d_null ) - , tangentDer2 ( (nTangDer2 != c3d_null) ? new Vector( *nTangDer2 ) : c3d_null ) + , tangent ( (nTang != nullptr) ? new Vector( *nTang ) : nullptr ) + , tangentDer1 ( (nTangDer1 != nullptr) ? new Vector( *nTangDer1 ) : nullptr ) + , tangentDer2 ( (nTangDer2 != nullptr) ? new Vector( *nTangDer2 ) : nullptr ) , movePnts ( nMovePnts ) , changedPnts ( nChangedPnts ) , attach ( nAttach ) @@ -154,9 +154,9 @@ template MbPntMatingData::MbPntMatingData( const MbPntMatingData & d ) : MbRefItem ( ) , type ( d.type ) - , tangent ( (d.tangent != c3d_null) ? new Vector( *d.tangent ) : c3d_null ) - , tangentDer1 ( (d.tangentDer1 != c3d_null) ? new Vector( *d.tangentDer1 ) : c3d_null ) - , tangentDer2 ( (d.tangentDer2 != c3d_null) ? new Vector( *d.tangentDer2 ) : c3d_null ) + , tangent ( (d.tangent != nullptr) ? new Vector( *d.tangent ) : nullptr ) + , tangentDer1 ( (d.tangentDer1 != nullptr) ? new Vector( *d.tangentDer1 ) : nullptr ) + , tangentDer2 ( (d.tangentDer2 != nullptr) ? new Vector( *d.tangentDer2 ) : nullptr ) , movePnts ( d.movePnts ) , changedPnts ( d.changedPnts ) , attach ( d.attach ) @@ -190,25 +190,25 @@ void MbPntMatingData::Init( const MbeMatingType nType, { type = nType; - if ( tangent != c3d_null && nTang != c3d_null ) // \ru касательный вектор \en tangent vector + if ( tangent != nullptr && nTang != nullptr ) // \ru касательный вектор \en tangent vector tangent->Init( *nTang ); - else if ( nTang != c3d_null ) + else if ( nTang != nullptr ) tangent = new Vector( *nTang ); - else if ( tangent != c3d_null ) + else if ( tangent != nullptr ) ::DeleteMatItem( tangent ); - if ( tangentDer1 != c3d_null && nTangDer1 != c3d_null ) // \ru первая производная касательного вектора \en first derivative of tangent vector + if ( tangentDer1 != nullptr && nTangDer1 != nullptr ) // \ru первая производная касательного вектора \en first derivative of tangent vector tangentDer1->Init( *nTangDer1 ); - else if ( nTangDer1 != c3d_null ) + else if ( nTangDer1 != nullptr ) tangentDer1 = new Vector( *nTangDer1 ); - else if ( tangentDer1 != c3d_null ) + else if ( tangentDer1 != nullptr ) ::DeleteMatItem( tangentDer1 ); - if ( tangentDer2 != c3d_null && nTangDer2 != c3d_null ) // \ru вторая производная касательного вектора \en second derivative of tangent vector + if ( tangentDer2 != nullptr && nTangDer2 != nullptr ) // \ru вторая производная касательного вектора \en second derivative of tangent vector tangentDer2->Init( *nTangDer2 ); - else if ( nTangDer2 != c3d_null ) + else if ( nTangDer2 != nullptr ) tangentDer2 = new Vector( *nTangDer2 ); - else if ( tangentDer2 != c3d_null ) + else if ( tangentDer2 != nullptr ) ::DeleteMatItem( tangentDer2 ); if ( type <= trt_Position ) { // BUG_52162 @@ -217,7 +217,7 @@ void MbPntMatingData::Init( const MbeMatingType nType, ::DeleteMatItem( tangentDer2 ); } - if ( changedPnts != c3d_null ) + if ( changedPnts != nullptr ) changedPnts->clear(); movePnts = nMovePnts; @@ -232,10 +232,10 @@ void MbPntMatingData::Init( const MbeMatingType nType, template bool MbPntMatingData::Init( const MbPntMatingData & d ) { - C3D_ASSERT( changedPnts == c3d_null ); + C3D_ASSERT( changedPnts == nullptr ); if ( this != &d ) { - SArray * dummyInds = c3d_null; + SArray * dummyInds = nullptr; Init( d.type, d.tangent, d.tangentDer1, d.tangentDer2, dummyInds, d.movePnts, d.attach ); return true; } @@ -274,9 +274,9 @@ bool MbPntMatingData::IsValid() const if ( type >= trt_Position ) { double lenEps = LENGTH_EPSILON; - bool isTang = (tangent != c3d_null); - bool isTangDer1 = (tangentDer1 != c3d_null); - bool isTangDer2 = (tangentDer2 != c3d_null); + bool isTang = (tangent != nullptr); + bool isTangDer1 = (tangentDer1 != nullptr); + bool isTangDer2 = (tangentDer2 != nullptr); bool isTangLen = (isTang && tangent->Length() > lenEps); switch( type ) { @@ -317,8 +317,8 @@ size_t MbPntMatingData::GetSmoothDegree() const res = 1; break; case trt_Normal : - if ( tangentDer1 != c3d_null ) res = 2; - else if ( tangent != c3d_null ) res = 1; + if ( tangentDer1 != nullptr ) res = 2; + else if ( tangent != nullptr ) res = 1; break; case trt_SmoothG2: res = 2; @@ -340,17 +340,17 @@ void MbPntMatingData::SetVector( ptrdiff_t i, const Vector & vect ) { switch ( i ) { case 0 : { - if ( tangent != c3d_null ) tangent->Init( vect ); + if ( tangent != nullptr ) tangent->Init( vect ); else tangent = new Vector( vect ); break; } case 1 : { - if ( tangentDer1 != c3d_null ) tangentDer1->Init( vect ); + if ( tangentDer1 != nullptr ) tangentDer1->Init( vect ); else tangentDer1 = new Vector( vect ); break; } case 2 : { - if ( tangentDer2 != c3d_null ) tangentDer2->Init( vect ); + if ( tangentDer2 != nullptr ) tangentDer2->Init( vect ); else tangentDer2 = new Vector( vect ); break; } @@ -364,7 +364,7 @@ void MbPntMatingData::SetVector( ptrdiff_t i, const Vector & vect ) template void MbPntMatingData::NormalizeAttachTangent() { - if ( attach && tangent != c3d_null ) { + if ( attach && tangent != nullptr ) { double tangLen = tangent->Length(); if ( tangLen > LENGTH_EPSILON ) (*tangent) /= tangLen; @@ -395,11 +395,11 @@ void MbPntMatingData::GetProperties( MbProperties & properties ) properties.Add( new StringProperty( IDS_PROP_0901, typeName, false ) ); */ - if ( tangent != c3d_null ) + if ( tangent != nullptr ) properties.Add( new MathItemProperty( IDS_PROP_0908, tangent, true ) ); - if ( tangentDer1 != c3d_null ) + if ( tangentDer1 != nullptr ) properties.Add( new MathItemProperty( IDS_PROP_0909, tangentDer1, true ) ); - if ( tangentDer2 != c3d_null ) + if ( tangentDer2 != nullptr ) properties.Add( new MathItemProperty( IDS_PROP_0910, tangentDer2, true ) ); properties.Add( new BoolProperty( IDS_PROP_0911, movePnts, false ) ); @@ -424,7 +424,7 @@ bool IsMatingDefined( const MbPntMatingData * data ) { bool isDefined = false; - if ( data != c3d_null && data->IsValid() ) { + if ( data != nullptr && data->IsValid() ) { if ( data->GetType() > trt_Position ) // \ru по позиции и так выполнится, поэтому считаем не заданным \en would be held at position, so assumed as undefined isDefined = true; } @@ -465,8 +465,8 @@ bool CopyMating( const PointMatingDataPtrVector & src, PointMatingDataPtrVector if ( src.size() > 0 && dst.size() < 1 ) { isDone = true; for ( size_t k = 0, cnt = src.size(); k < cnt && isDone; ++k ) { - MbPntMatingData * copyItem = c3d_null; - if ( src[k] != c3d_null ) { + MbPntMatingData * copyItem = nullptr; + if ( src[k] != nullptr ) { copyItem = new MbPntMatingData(); isDone = copyItem->Init( *src[k] ); } @@ -511,18 +511,18 @@ void TransformMating( const PointMatingDataPtrVector & data, const Matrix & matr for ( size_t k = 0, cnt = data.size(); k < cnt; ++k ) { MbPntMatingData * dataItem = data[k]; - if ( dataItem != c3d_null ) { - if ( dataItem->GetTangent() != c3d_null ) { + if ( dataItem != nullptr ) { + if ( dataItem->GetTangent() != nullptr ) { vect = *dataItem->GetTangent(); vect.Transform( matr ); dataItem->SetVector( 0, vect ); } - if ( dataItem->GetTangentDer1() != c3d_null ) { + if ( dataItem->GetTangentDer1() != nullptr ) { vect = *dataItem->GetTangentDer1(); vect.Transform( matr ); dataItem->SetVector( 1, vect ); } - if ( dataItem->GetTangentDer2() != c3d_null ) { + if ( dataItem->GetTangentDer2() != nullptr ) { vect = *dataItem->GetTangentDer2(); vect.Transform( matr ); dataItem->SetVector( 2, vect ); @@ -542,17 +542,17 @@ void RotateMating( const PointMatingDataPtrVector & data, const Axis & axis, dou for ( size_t i = 0, cnt = data.size(); i < cnt; ++i ) { MbPntMatingData * dataItem = data[i]; - if ( dataItem->GetTangent() != c3d_null ) { + if ( dataItem->GetTangent() != nullptr ) { vect = *dataItem->GetTangent(); vect.Rotate( axis, angle ); dataItem->SetVector( 0, vect ); } - if ( dataItem->GetTangentDer1() != c3d_null ) { + if ( dataItem->GetTangentDer1() != nullptr ) { vect = *dataItem->GetTangentDer1(); vect.Rotate( axis, angle ); dataItem->SetVector( 1, vect ); } - if ( dataItem->GetTangentDer2() != c3d_null ) { + if ( dataItem->GetTangentDer2() != nullptr ) { vect = *dataItem->GetTangentDer2(); vect.Rotate( axis, angle ); dataItem->SetVector( 2, vect ); @@ -573,10 +573,10 @@ void WriteMating( writer & out, const PointMatingDataPtrVector & data ) for ( size_t k = 0; k < cnt && out.good(); k++ ) { const MbPntMatingData * item = data[k]; // \ru наличие сопряжения \en presence of conjugation - bool isItem = (item != c3d_null); + bool isItem = (item != nullptr); out << isItem; - if ( isItem && item->GetChangedPoints() != c3d_null ) { + if ( isItem && item->GetChangedPoints() != nullptr ) { C3D_ASSERT_UNCONDITIONAL( false ); // \ru KYA массив индексов должен быть пуст, т.к. он общий для всех сопряжений, им владеет заказчик операции \en KYA array of indices should be empy because it is shared between all of conjugations and owned by user of operation out.setState( io::cantWriteObject ); } @@ -586,17 +586,17 @@ void WriteMating( writer & out, const PointMatingDataPtrVector & data ) uint32 type = (uint32)item->GetType(); out << type; // \ru касательный вектор \en tangent vector - isItem = (item->GetTangent() != c3d_null); + isItem = (item->GetTangent() != nullptr); out << isItem; if ( isItem ) out << (*item->GetTangent()); // \ru первая производная касательного вектора \en first derivative of tangent vector - isItem = (item->GetTangentDer1() != c3d_null); + isItem = (item->GetTangentDer1() != nullptr); out << isItem; if ( isItem ) out << (*item->GetTangentDer1()); // \ru вторая производная касательного вектора \en second derivative of tangent vector - isItem = (item->GetTangentDer2() != c3d_null); + isItem = (item->GetTangentDer2() != nullptr); out << isItem; if ( isItem ) out << (*item->GetTangentDer2()); @@ -621,7 +621,7 @@ void ReadMating( reader & in, PointMatingDataPtrVector & data ) if ( cnt > 0 ) { data.reserve( data.size() + cnt ); - SArray * dummyInds = c3d_null; + SArray * dummyInds = nullptr; for ( size_t k = 0; k < cnt && in.good(); k++ ) { // \ru наличие сопряжения \en presence of conjugation @@ -633,9 +633,9 @@ void ReadMating( reader & in, PointMatingDataPtrVector & data ) uint32 type = uint32(trt_None); in >> type; - MbVector3D * v1 = c3d_null; - MbVector3D * v2 = c3d_null; - MbVector3D * v3 = c3d_null; + MbVector3D * v1 = nullptr; + MbVector3D * v2 = nullptr; + MbVector3D * v3 = nullptr; // \ru касательный вектор \en tangent vector in >> isItem; @@ -670,7 +670,7 @@ void ReadMating( reader & in, PointMatingDataPtrVector & data ) ::DeleteMatItem( v3 ); } else { - data.push_back( c3d_null ); + data.push_back( nullptr ); } } } @@ -691,21 +691,21 @@ void CopyPntMatingData( const MbPntMatingData & srcData, MbPntMatingD size_t dim = std_min( SrcVector::GetDimension(), DstVector::GetDimension() ); - DstVector * tangent = c3d_null; - DstVector * tangentDer1 = c3d_null; - DstVector * tangentDer2 = c3d_null; + DstVector * tangent = nullptr; + DstVector * tangentDer1 = nullptr; + DstVector * tangentDer2 = nullptr; - if ( srcData.GetTangent() != c3d_null ) { + if ( srcData.GetTangent() != nullptr ) { tangent = new DstVector; for ( size_t k = 0; k < dim; k++ ) (*tangent)[k] = (*srcData.GetTangent())[k]; } - if ( srcData.GetTangentDer1() != c3d_null ) { + if ( srcData.GetTangentDer1() != nullptr ) { tangentDer1 = new DstVector; for ( size_t k = 0; k < dim; k++ ) (*tangentDer1)[k] = (*srcData.GetTangentDer1())[k]; } - if ( srcData.GetTangentDer2() != c3d_null ) { + if ( srcData.GetTangentDer2() != nullptr ) { tangentDer2 = new DstVector; for ( size_t k = 0; k < dim; k++ ) (*tangentDer2)[k] = (*srcData.GetTangentDer2())[k]; diff --git a/C3d/Include/mb_property.h b/C3d/Include/mb_property.h index 3e8529b..779c285 100644 --- a/C3d/Include/mb_property.h +++ b/C3d/Include/mb_property.h @@ -751,8 +751,8 @@ OBVIOUS_PRIVATE_COPY( VersionProperty ) template inline void GetCharValue( const PropType *, const FieldType *, uint32 n, TCHAR * v ) { - C3D_ASSERT( v != c3d_null ); - if ( v != c3d_null ) { + C3D_ASSERT( v != nullptr ); + if ( v != nullptr ) { if ( n == 0 ) { v[0] = _T(' '); v[1] = _T('\0'); @@ -774,8 +774,8 @@ inline void GetCharValue( const PropType *, const FieldType *, uint32 n, TCHAR * template inline void GetCharValue( const PropType *, const MbCartPoint * value, uint32 n, TCHAR * v ) { - C3D_ASSERT( value != c3d_null && v != c3d_null ); - if ( value != c3d_null && v != c3d_null ) { + C3D_ASSERT( value != nullptr && v != nullptr ); + if ( value != nullptr && v != nullptr ) { if ( n == 0 ) _sntprintf( v, 64, _T("%.3f\t%.3f"), value->x, value->y ); else @@ -795,8 +795,8 @@ inline void GetCharValue( const PropType *, const MbCartPoint * value, uint32 n, template inline void GetCharValue( const PropType *, const MbVector * value, uint32 n, TCHAR * v ) { - C3D_ASSERT( value != c3d_null && v != c3d_null ); - if ( value != c3d_null && v != c3d_null ) { + C3D_ASSERT( value != nullptr && v != nullptr ); + if ( value != nullptr && v != nullptr ) { if ( n == 0 ) _sntprintf( v, 64, _T("%.3f\t%.3f"), value->x, value->y ); else @@ -816,8 +816,8 @@ inline void GetCharValue( const PropType *, const MbVector * value, uint32 n, TC template inline void GetCharValue( const PropType *, const MbDirection * value, uint32 n, TCHAR * v ) { - C3D_ASSERT( value != c3d_null && v != c3d_null ); - if ( value != c3d_null && v != c3d_null ) { + C3D_ASSERT( value != nullptr && v != nullptr ); + if ( value != nullptr && v != nullptr ) { double angle(0.0); if ( value->ax==0 && value->ay==0 ) angle = 0.0; @@ -842,8 +842,8 @@ inline void GetCharValue( const PropType *, const MbDirection * value, uint32 n, template inline void GetCharValue( const PropType *, const MbCartPoint3D * value, uint32 n, TCHAR * v ) { - C3D_ASSERT( value != c3d_null && v != c3d_null ); - if ( value != c3d_null && v != c3d_null ) { + C3D_ASSERT( value != nullptr && v != nullptr ); + if ( value != nullptr && v != nullptr ) { if ( n == 0 ) _sntprintf( v, 64, _T("%.3f\t%.3f\t%.3f"), value->x, value->y, value->z ); else @@ -863,8 +863,8 @@ inline void GetCharValue( const PropType *, const MbCartPoint3D * value, uint32 template inline void GetCharValue( const PropType *, const MbVector3D * value, uint32 n, TCHAR * v ) { - C3D_ASSERT( value != c3d_null && v != c3d_null ); - if ( value != c3d_null && v != c3d_null ) { + C3D_ASSERT( value != nullptr && v != nullptr ); + if ( value != nullptr && v != nullptr ) { if ( n == 0 ) _sntprintf( v, 64, _T("%.3f\t%.3f\t%.3f"), value->x, value->y, value->z ); else @@ -884,9 +884,9 @@ inline void GetCharValue( const PropType *, const MbVector3D * value, uint32 n, template inline void GetCharValue( const PropType *, const MbName * value, uint32 n, TCHAR * v ) { - C3D_ASSERT( v != c3d_null ); - if ( v != c3d_null ) { - if ( value != c3d_null ) { + C3D_ASSERT( v != nullptr ); + if ( v != nullptr ) { + if ( value != nullptr ) { c3d::string_t str; value->ToString( str ); diff --git a/C3d/Include/mb_rough.h b/C3d/Include/mb_rough.h index 87b1d0f..ef25c79 100644 --- a/C3d/Include/mb_rough.h +++ b/C3d/Include/mb_rough.h @@ -62,7 +62,7 @@ public: \en \name Common functions of a geometric object. \{ */ virtual MbeSpaceType IsA () const; - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual ( const MbSpaceItem & ); @@ -133,12 +133,12 @@ public: \{ */ virtual MbeSpaceType IsA () const; - virtual MbSpaceItem & Duplicate ( MbRegDuplicate * = c3d_null ) const; + virtual MbSpaceItem & Duplicate ( MbRegDuplicate * = nullptr ) const; virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual ( const MbSpaceItem & ); - virtual void Transform ( const MbMatrix3D &, MbRegTransform * = c3d_null ); - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); - virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = c3d_null ); + virtual void Transform ( const MbMatrix3D &, MbRegTransform * = nullptr ); + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); + virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = nullptr ); virtual void GetProperties( MbProperties & ); virtual void SetProperties( const MbProperties & ); diff --git a/C3d/Include/mb_symbol.h b/C3d/Include/mb_symbol.h index 4846a28..2a3667b 100644 --- a/C3d/Include/mb_symbol.h +++ b/C3d/Include/mb_symbol.h @@ -123,13 +123,13 @@ public: \{ */ virtual MbeSpaceType IsA() const = 0; virtual MbeSpaceType Type() const; - virtual MbSpaceItem & Duplicate ( MbRegDuplicate * = c3d_null ) const = 0; + virtual MbSpaceItem & Duplicate ( MbRegDuplicate * = nullptr ) const = 0; virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const = 0; virtual bool IsSimilar ( const MbSpaceItem & ) const; virtual bool SetEqual ( const MbSpaceItem & ) = 0; - virtual void Transform ( const MbMatrix3D &, MbRegTransform * = c3d_null ) = 0; - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ) = 0; - virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = c3d_null ) = 0; + virtual void Transform ( const MbMatrix3D &, MbRegTransform * = nullptr ) = 0; + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ) = 0; + virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = nullptr ) = 0; virtual double DistanceToPoint ( const MbCartPoint3D & ) const; virtual void AddYourGabaritTo ( MbCube & ) const {}; virtual void CalculateMesh ( const MbStepData & stepData, const MbFormNote & note, MbMesh & mesh ) const; @@ -239,12 +239,12 @@ public: \en \name Common functions of a geometric object. \{ */ virtual MbeSpaceType IsA () const; - virtual MbSpaceItem & Duplicate ( MbRegDuplicate * = c3d_null ) const; + virtual MbSpaceItem & Duplicate ( MbRegDuplicate * = nullptr ) const; virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual ( const MbSpaceItem & ); - virtual void Transform ( const MbMatrix3D &, MbRegTransform * = c3d_null ); - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); - virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = c3d_null ); + virtual void Transform ( const MbMatrix3D &, MbRegTransform * = nullptr ); + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); + virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = nullptr ); virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта. \en Set properties of the object. diff --git a/C3d/Include/mb_thread.h b/C3d/Include/mb_thread.h index 7d6d709..b822791 100644 --- a/C3d/Include/mb_thread.h +++ b/C3d/Include/mb_thread.h @@ -284,13 +284,13 @@ public: \{ */ virtual MbeSpaceType IsA() const; virtual MbeSpaceType Type() const; - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; virtual bool IsSame ( const MbSpaceItem &, double accuracy = LENGTH_EPSILON ) const; virtual bool IsSimilar ( const MbSpaceItem & ) const; virtual bool SetEqual( const MbSpaceItem & ); - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); - virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = c3d_null ); + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); + virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = nullptr ); virtual double DistanceToPoint ( const MbCartPoint3D & ) const; virtual void AddYourGabaritTo( MbCube & ) const; virtual void Refresh(); @@ -379,7 +379,7 @@ public : \return \ru true, если имя есть и оно не пустое. \en True if there is name and it is not empty. \~ */ - bool IsName() const { return ((name != c3d_null) ? name->IsEmpty() : false); } + bool IsName() const { return ((name != nullptr) ? name->IsEmpty() : false); } /** \} */ /**\ru \name Функции работы с телами, на которых нарезана резьба. @@ -562,7 +562,7 @@ public : */ bool IsMatedTo( const MbThread & otherThread, const MbThreadedJointCheckParameters & checkParams, - ThreadedJointErrors * thrJointErrors = c3d_null ) const; + ThreadedJointErrors * thrJointErrors = nullptr ) const; /// \ru Принадлежит ли резьба грани. \en Check if thread belongs to face. bool IsFaceThread( const MbFace *, const MbMatrix3D & ) const; @@ -583,8 +583,8 @@ public : \en True if thread belongs to one of solid faces. \~ */ bool IsBodyThread( const MbSolid & solid, const MbMatrix3D & matrix, - c3d::IndicesVector * simObjNumbers = c3d_null, - c3d::IndicesVector * intObjNumbers = c3d_null ) const; + c3d::IndicesVector * simObjNumbers = nullptr, + c3d::IndicesVector * intObjNumbers = nullptr ) const; /** \brief \ru Принадлежит ли резьба телу. \en Check if thread belongs to solid. \~ @@ -612,7 +612,7 @@ public : \return \ru true в случае успеха операции. \en True if the operation is successful. \~ */ - bool AdaptToBody( const MbSolid & solid, const MbMatrix3D & matrix, MbeThrAdapt thrAdapt, const ThreadLimiters * limiters = c3d_null ); + bool AdaptToBody( const MbSolid & solid, const MbMatrix3D & matrix, MbeThrAdapt thrAdapt, const ThreadLimiters * limiters = nullptr ); /** \brief \ru Выдать начало и конец изменённой резьбы относительно исходной. \en Get limit positions of the modified thread in regard to an initial thread. \~ @@ -737,7 +737,7 @@ bool MbThread::FindThreadBodies( const SolidsVector & solids, const MatricesVect MbCube solidCube; for ( size_t i = 0; i < solidsCnt; ++i ) { const MbSolid * solid = solids[i]; - if ( solid != c3d_null && solid->GetShell() != c3d_null ) { + if ( solid != nullptr && solid->GetShell() != nullptr ) { solidCube.SetEmpty(); solid->AddYourGabaritTo( solidCube ); if ( cube.Intersect( solidCube ) && IsBodyThread( *solid, matrices[i] ) ) @@ -788,32 +788,32 @@ bool CheckThreads( ThreadsVector & threads, const MbPlacement3D * placeSec, bool for ( size_t i = threads.size(); i--; ) { MbThread * thr = threads[i]; - if ( (thr == c3d_null) || !thr->IsValid() ) { + if ( (thr == nullptr) || !thr->IsValid() ) { threads.erase( threads.begin() + i ); - thr = c3d_null; + thr = nullptr; } - else if ( checkThreadNames && (thr->GetName() == c3d_null) ) { // C3D-695 : KOMPAS-25125 + else if ( checkThreadNames && (thr->GetName() == nullptr) ) { // C3D-695 : KOMPAS-25125 threads.erase( threads.begin() + i ); - thr = c3d_null; + thr = nullptr; } else { if ( threads.size() > 1 ) { for ( ptrdiff_t j = i - 1; j >= 0; j-- ) { if ( thr == threads[j] ) { - threads[i] = c3d_null; + threads[i] = nullptr; threads.erase( threads.begin() + i ); C3D_ASSERT_UNCONDITIONAL( false ); // Error case! - thr = c3d_null; + thr = nullptr; break; } } } } - if ( thr != c3d_null ) // KOMPAS-37171 + if ( thr != nullptr ) // KOMPAS-37171 thr->DetachWrongBodies(); } - if ( !threads.empty() && (placeSec != c3d_null) ) { + if ( !threads.empty() && (placeSec != nullptr) ) { const MbVector3D & axisZsec = placeSec->GetAxisZ(); for ( size_t i = threads.size(); i--; ) { const MbThread * thr = threads[i]; diff --git a/C3d/Include/mb_variables.h b/C3d/Include/mb_variables.h index 04d8563..3633691 100644 --- a/C3d/Include/mb_variables.h +++ b/C3d/Include/mb_variables.h @@ -648,8 +648,8 @@ extern "C" \en Pointer to the beginning of the buffer. \~ \param[in] bufferSize - \ru Размер буфера, в символах. \en The size of the buffer in characters. \~ - \return \ru Возвращает количество скопированных символов, без учета null-символа. Если buffer == c3d_null возвращается необходимый размер буфера без учета null-символа. - \en Returns the number of copied characters, excluding the null character. If buffer = = c3d_null returns the required buffer size without the null character. \~ + \return \ru Возвращает количество скопированных символов, без учета null-символа. Если buffer == nullptr возвращается необходимый размер буфера без учета null-символа. + \en Returns the number of copied characters, excluding the null character. If buffer = = nullptr returns the required buffer size without the null character. \~ */ extern MATH_FUNC(size_t) GetC3dVersionInfo( char * const buffer, size_t bufferSize ); ///< \ru Информация о версии c3d.dll \en c3d.dll version information @@ -662,8 +662,8 @@ extern "C" \en Pointer to the beginning of the buffer. \~ \param[in] bufferSize - \ru Размер буфера, в символах. \en The size of the buffer in characters. \~ - \return \ru Возвращает количество скопированных символов, без учета null-символа. Если buffer == c3d_null возвращается необходимый размер буфера без учета null-символа. - \en Returns the number of copied characters, excluding the null character. If buffer = = c3d_null returns the required buffer size without the null character. \~ + \return \ru Возвращает количество скопированных символов, без учета null-символа. Если buffer == nullptr возвращается необходимый размер буфера без учета null-символа. + \en Returns the number of copied characters, excluding the null character. If buffer = = nullptr returns the required buffer size without the null character. \~ */ extern MATH_FUNC(size_t) GetC3dBuildInfo( char * const buffer, size_t bufferSize ); ///< \ru Информация о сборке c3d.dll \en c3d.dll building information @@ -684,7 +684,7 @@ inline std::string GetC3dLibInfo( bool needVersionInfo = true ) size_t( *GetLibInfo )( char * const buffer, size_t bufferSize ); GetLibInfo = ( needVersionInfo ) ? GetC3dVersionInfo : GetC3dBuildInfo; - std::vector buffer( GetLibInfo( c3d_null, 1 ) ); + std::vector buffer( GetLibInfo( nullptr, 1 ) ); GetLibInfo( &buffer[0], buffer.size() ); diff --git a/C3d/Include/mesh.h b/C3d/Include/mesh.h index 45f19b0..130cbee 100644 --- a/C3d/Include/mesh.h +++ b/C3d/Include/mesh.h @@ -112,10 +112,10 @@ public: // \ru Общие функции геометрического объекта. \en Common functions of a geometric object. virtual MbeSpaceType IsA() const; // \ru Тип объекта. \en Type of the object. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными? \en Determine whether objects are equal. virtual bool SetEqual ( const MbSpaceItem & init ); // \ru Сделать объекты равным. \en Make equal objects. virtual double DistanceToPoint ( const MbCartPoint3D & ) const; // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. @@ -182,21 +182,19 @@ public: gridsVector.reserve( gridsVector.size() + grids.size() ); for( size_t i = 0, iCount = grids.size(); i < iCount; ++i ) { MbGrid * gr = grids[i]; - if ( gr != c3d_null ) { + if ( gr != nullptr ) { gr->DecRef(); gridsVector.push_back( gr ); } } grids.clear(); -#ifdef C3D_STANDARD_CXX_11_PARTIAL grids.shrink_to_fit(); -#endif cube.SetEmpty(); } /// \ru Вернуть указатель на триангуляцию по её номеру. \en Return pointer to triangulation by it number. - const MbGrid * GetGrid( size_t i ) const { return ( (i < grids.size()) ? grids[i]: c3d_null ); } + const MbGrid * GetGrid( size_t i ) const { return ( (i < grids.size()) ? grids[i]: nullptr ); } /// \ru Вернуть указатель на триангуляцию по её номеру для модификации. \en Return the pointer to triangulation by its number to be modified. - MbGrid * SetGrid( size_t i ) { return ( (i < grids.size()) ? grids[i]: c3d_null ); } + MbGrid * SetGrid( size_t i ) { return ( (i < grids.size()) ? grids[i]: nullptr ); } /// \ru Получить указатели на триангуляции. \en Get pointers to triangulations. template void GetGrids( GridsVector & gridsVector ) const @@ -218,14 +216,14 @@ public: for ( k = 0; k < gridsCnt; ++k ) { const MbGrid * grid = grids[k]; - if ( grid != c3d_null ) + if ( grid != nullptr ) addPointsCnt += grid->PointsCount(); } points.reserve( points.size() + addPointsCnt ); for ( k = 0; k < gridsCnt; ++k ) { const MbGrid * grid = grids[k]; - if ( grid != c3d_null ) + if ( grid != nullptr ) grid->GetPoints( points ); } } @@ -243,21 +241,19 @@ public: polyVector.reserve( polyVector.size() + wires.size() ); for( size_t i = 0, iCount = wires.size(); i < iCount; ++i ) { MbPolygon3D * pl = wires[i]; - if ( pl != c3d_null ) { + if ( pl != nullptr ) { pl->DecRef(); polyVector.push_back( pl ); } } wires.clear(); -#ifdef C3D_STANDARD_CXX_11_PARTIAL wires.shrink_to_fit(); -#endif cube.SetEmpty(); } /// \ru Вернуть указатель на полигон по его номеру. \en Return the pointer to polygon by its number. - const MbPolygon3D * GetPolygon( size_t i ) const { return ( (i < wires.size()) ? wires[i]: c3d_null ); } + const MbPolygon3D * GetPolygon( size_t i ) const { return ( (i < wires.size()) ? wires[i]: nullptr ); } /// \ru Вернуть указатель на полигон по его номеру. \en Return the pointer to polygon by its number. - MbPolygon3D * SetPolygon( size_t i ) { return ( (i < wires.size()) ? wires[i]: c3d_null ); } + MbPolygon3D * SetPolygon( size_t i ) { return ( (i < wires.size()) ? wires[i]: nullptr ); } /// \ru Получить указатели на полигоны. \en Get pointers to polygons. template void GetPolygons( PolygonsVector & polyVector ) const { @@ -282,21 +278,19 @@ public: peakVector.reserve( peakVector.size() + peaks.size() ); for( size_t i = 0, iCount = peaks.size(); i < iCount; ++i ) { MbApex3D * peak = peaks[i]; - if ( peak != c3d_null ) { + if ( peak != nullptr ) { peak->DecRef(); peakVector.push_back( peak ); } } peaks.clear(); -#ifdef C3D_STANDARD_CXX_11_PARTIAL peaks.shrink_to_fit(); -#endif cube.SetEmpty(); } /// \ru Вернуть указатель на апекс по его номеру. \en Return the pointer to apex by its number. - const MbApex3D * GetApex( size_t i ) const { return ( (i < peaks.size()) ? peaks[i]: c3d_null ); } + const MbApex3D * GetApex( size_t i ) const { return ( (i < peaks.size()) ? peaks[i]: nullptr ); } /// \ru Вернуть указатель на апекс по его номеру для модификации. \en Return the pointer to apex by its number to be modified. - MbApex3D * SetApex( size_t i ) { return ( (i < peaks.size()) ? peaks[i]: c3d_null ); } + MbApex3D * SetApex( size_t i ) { return ( (i < peaks.size()) ? peaks[i]: nullptr ); } /// \ru Получить указатели на вершины. \en Get pointers to apexes. template void GetApexes( ApexesVector & peakVector ) const { @@ -317,14 +311,14 @@ public: bool AddMesh( const MbMesh &, bool checkSamePointers ); /// \ru Получить пространственный объект, для которого построен полигональный объект. \en Get a spatial object for which a polygonal object is constructed. - const MbSpaceItem * SpaceItem() const { return ((item != c3d_null && item->RefType() == rt_SpaceItem) ? (const MbSpaceItem *)item : c3d_null); } + const MbSpaceItem * SpaceItem() const { return ((item != nullptr && item->RefType() == rt_SpaceItem) ? (const MbSpaceItem *)item : nullptr); } /// \ru Получить двумерный объект, для которого построен полигональный объект. \en Get a two-dimensional object for which a polygonal object is constructed. - const MbPlaneItem * PlaneItem() const { return ((item != c3d_null && item->RefType() == rt_PlaneItem) ? (const MbPlaneItem *)item : c3d_null); } + const MbPlaneItem * PlaneItem() const { return ((item != nullptr && item->RefType() == rt_PlaneItem) ? (const MbPlaneItem *)item : nullptr); } /// \ru Получить объект геометрической модели, для которого построен полигональный объект. \en Get a model geometric object for which a polygonal object is constructed. const MbItem * Item() const { - const MbItem * modelItem = c3d_null; - if ( item != c3d_null ) { + const MbItem * modelItem = nullptr; + if ( item != nullptr ) { MbeRefType refType = item->RefType(); if ( refType == rt_SpaceItem ) { if ( static_cast(item)->Family() == st_Item ) @@ -450,7 +444,7 @@ public: { for ( size_t k = grids.size(); k--; ) { const MbGrid * grid = grids[k]; - if ( c3d_null != grid ) { + if ( nullptr != grid ) { if ( forcedNew || !grid->IsSearchTreeReady() ) grid->CreateSearchTree(); } @@ -465,7 +459,7 @@ public: { for ( size_t k = grids.size(); k--; ) { const MbGrid * grid = grids[k]; - if ( c3d_null != grid ) + if ( nullptr != grid ) grid->DeleteSearchTree(); } } diff --git a/C3d/Include/mesh_grid.h b/C3d/Include/mesh_grid.h index 815f86f..0f5879b 100644 --- a/C3d/Include/mesh_grid.h +++ b/C3d/Include/mesh_grid.h @@ -58,7 +58,7 @@ public: // \ru \name Общие функции примитива. \en \name Common functions of primitive. virtual MbePrimitiveType IsA() const; // \ru Тип объекта. \en A type of an object. - virtual MbExactGrid & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Создать копию объекта. \en Create a copy of the object. + virtual MbExactGrid & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Создать копию объекта. \en Create a copy of the object. virtual void Transform( const MbMatrix3D & ); // \ru Преобразовать сетку согласно матрице. \en Transform mesh according to the matrix. virtual void Move ( const MbVector3D & ); // \ru Сдвиг сетки. \en Move mesh. virtual void Rotate ( const MbAxis3D &, double angle ); // \ru Поворот сетки вокруг оси. \en Rotation of mesh about an axis. @@ -247,17 +247,13 @@ public: // \ru Удалить всю триангуляцию и освободить память. \en Delete all triangulation and free the memory. virtual void HardFlush() { params.clear(); points.clear(); normals.clear(); escorts.clear(); triangles.clear(); quadrangles.clear(); LoopsDelete(); - #ifdef C3D_STANDARD_CXX_11_PARTIAL points.shrink_to_fit(); normals.shrink_to_fit(); params.shrink_to_fit(); escorts.shrink_to_fit(); triangles.shrink_to_fit(); quadrangles.shrink_to_fit(); loops.shrink_to_fit(); - #endif cube.SetEmpty(); DeleteSearchTree(); } // \ru Освободить лишнюю память. \en Free the unnecessary memory. virtual void Adjust() { - #ifdef C3D_STANDARD_CXX_11_PARTIAL points.shrink_to_fit(); normals.shrink_to_fit(); params.shrink_to_fit(); escorts.shrink_to_fit(); triangles.shrink_to_fit(); quadrangles.shrink_to_fit(); loops.shrink_to_fit(); - #endif } // \ru Выдать размер триангуляции в байтах. \en Get size of triangulation in bytes. @@ -277,11 +273,11 @@ public: /// \ru Выдать адрес начала массива. \en Get the address of the beginning of the array. virtual const MbCartPoint * GetExactParamsAddr() const { return &(params[0]); } /// \ru Выдать адрес начала массива. \en Get the address of the beginning of the array. - virtual const MbFloatPoint3D * GetFloatPointsAddr() const { return c3d_null; } + virtual const MbFloatPoint3D * GetFloatPointsAddr() const { return nullptr; } /// \ru Выдать адрес начала массива. \en Get the address of the beginning of the array. - virtual const MbFloatVector3D * GetFloatNormalsAddr() const { return c3d_null; } + virtual const MbFloatVector3D * GetFloatNormalsAddr() const { return nullptr; } /// \ru Выдать адрес начала массива. \en Get the address of the beginning of the array. - virtual const MbFloatPoint * GetFloatParamsAddr() const { return c3d_null; } + virtual const MbFloatPoint * GetFloatParamsAddr() const { return nullptr; } private : // \ru Объявление оператора присваивания без реализации, чтобы не было присваивания по умолчанию. \en The declaration of the assignment operator without implementation, to prevent an assignment by default. @@ -327,7 +323,7 @@ public: // \ru \name Общие функции примитива. \en \name Common functions of primitive. virtual MbePrimitiveType IsA() const; // \ru Тип объекта. \en A type of an object. - virtual MbFloatGrid & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Создать копию объекта. \en Create a copy of the object. + virtual MbFloatGrid & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Создать копию объекта. \en Create a copy of the object. virtual void Transform( const MbMatrix3D & ); // \ru Преобразовать сетку согласно матрице. \en Transform mesh according to the matrix. virtual void Move ( const MbVector3D & ); // \ru Сдвиг сетки. \en Move mesh. virtual void Rotate ( const MbAxis3D &, double angle ); // \ru Поворот сетки вокруг оси. \en Rotation of mesh about an axis. @@ -516,17 +512,13 @@ public: // \ru Удалить всю триангуляцию и освободить память. \en Delete all triangulation and free the memory. virtual void HardFlush() { params.clear(); points.clear(); normals.clear(); escorts.clear(); triangles.clear(); quadrangles.clear(); LoopsDelete(); - #ifdef C3D_STANDARD_CXX_11_PARTIAL points.shrink_to_fit(); normals.shrink_to_fit(); params.shrink_to_fit(); escorts.shrink_to_fit(); triangles.shrink_to_fit(); quadrangles.shrink_to_fit(); loops.shrink_to_fit(); - #endif cube.SetEmpty(); DeleteSearchTree(); } // \ru Освободить лишнюю память. \en Free the unnecessary memory. virtual void Adjust() { - #ifdef C3D_STANDARD_CXX_11_PARTIAL points.shrink_to_fit(); normals.shrink_to_fit(); params.shrink_to_fit(); escorts.shrink_to_fit(); triangles.shrink_to_fit(); quadrangles.shrink_to_fit(); loops.shrink_to_fit(); - #endif } // \ru Выдать размер триангуляции в байтах. \en Get size of triangulation in bytes. @@ -540,11 +532,11 @@ public: virtual void Init( const MbGrid & grid ); /// \ru Выдать адрес начала массива. \en Get the address of the beginning of the array. - virtual const MbCartPoint3D * GetExactPointsAddr() const { return c3d_null; } + virtual const MbCartPoint3D * GetExactPointsAddr() const { return nullptr; } /// \ru Выдать адрес начала массива. \en Get the address of the beginning of the array. - virtual const MbVector3D * GetExactNormalsAddr() const { return c3d_null; } + virtual const MbVector3D * GetExactNormalsAddr() const { return nullptr; } /// \ru Выдать адрес начала массива. \en Get the address of the beginning of the array. - virtual const MbCartPoint * GetExactParamsAddr() const { return c3d_null; } + virtual const MbCartPoint * GetExactParamsAddr() const { return nullptr; } /// \ru Выдать адрес начала массива. \en Get the address of the beginning of the array. virtual const MbFloatPoint3D * GetFloatPointsAddr() const { return &(points[0]); } /// \ru Выдать адрес начала массива. \en Get the address of the beginning of the array. diff --git a/C3d/Include/mesh_plane_grid.h b/C3d/Include/mesh_plane_grid.h index ab1b445..58c967a 100644 --- a/C3d/Include/mesh_plane_grid.h +++ b/C3d/Include/mesh_plane_grid.h @@ -215,7 +215,7 @@ private: intptr_t size; ///< \ru Количество вершин. \en Count of vertices. public: - TriPoly() : vertex( c3d_null ), size( 0 ) {} + TriPoly() : vertex( nullptr ), size( 0 ) {} TriPoly( TriVertex * vert ) : vertex( vert ), size( 0 ) { Resize(); } public: @@ -223,7 +223,7 @@ public: public: intptr_t Size() const { return size; } ///< \ru Размер цепочки вершин \en Size of vertex chain - size_t Index() const { return (vertex != c3d_null) ? vertex->Index() : SYS_MAX_T; } ///< \ru Индекс вершины \en Index of vertex + size_t Index() const { return (vertex != nullptr) ? vertex->Index() : SYS_MAX_T; } ///< \ru Индекс вершины \en Index of vertex TriVertex * This() const { return vertex; } ///< \ru Текущая вершина \en Current vertex TriVertex * Next() const; ///< \ru Следующая вершина \en Next vertex @@ -242,6 +242,8 @@ public: template bool CalculateGab( const SArray & pnts, Gab & rect ) const; + TriPoly * DeleteDegeneratedBridge( MbPlanarGrid & grid ); ///< \ru Удалить вырожденный мостик от текущей вершины. \en Remove the degenerate bridge from the current vertex. + private: void Resize(); ///< \ru Обновление размера \en Set size to zero @@ -301,7 +303,7 @@ protected: // \ru 2 - смедный через ребра на вершинах 2,0 \en 2 - adjacent at edge with vertices 2,0 public: - MbLinkedTri() : MbTri() { neighbors[0] = neighbors[1] = neighbors[2] = c3d_null; }; + MbLinkedTri() : MbTri() { neighbors[0] = neighbors[1] = neighbors[2] = nullptr; }; ~MbLinkedTri() {}; public: MbTri * GetNeighbor( size_t n ) const { return neighbors[n % 3]; } @@ -317,9 +319,9 @@ OBVIOUS_PRIVATE_COPY( MbLinkedTri ) // --- inline bool MbLinkedTri::IsBoundary() const { - bool isBoundary = (neighbors[0] == c3d_null) || - (neighbors[1] == c3d_null) || - (neighbors[2] == c3d_null); + bool isBoundary = (neighbors[0] == nullptr) || + (neighbors[1] == nullptr) || + (neighbors[2] == nullptr); return isBoundary; } // */ diff --git a/C3d/Include/mesh_polygon.h b/C3d/Include/mesh_polygon.h index 84ad5cf..1e6a7a8 100644 --- a/C3d/Include/mesh_polygon.h +++ b/C3d/Include/mesh_polygon.h @@ -51,7 +51,7 @@ public: // \ru Общие функции примитива. \en Common functions of the primitive. virtual MbePrimitiveType IsA() const; // \ru Вернуть тип объекта \en Get the object type. - virtual MbExactPolygon3D & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; // \ru Создать копию объекта \en Create a copy of the object + virtual MbExactPolygon3D & Duplicate( MbRegDuplicate * iReg = nullptr ) const; // \ru Создать копию объекта \en Create a copy of the object virtual void Transform( const MbMatrix3D & ); // \ru Преобразовать полигон согласно матрице \en Transform polygon according to the matrix virtual void Move ( const MbVector3D & ); // \ru Сдвиг полигона \en Translation of the polygon. virtual void Rotate ( const MbAxis3D &, double angle ); // \ru Поворот полигона вокруг оси \en Rotation of the polygon around an axis @@ -69,9 +69,7 @@ public: virtual void Reserve( size_t cnt ) { points.reserve( points.size() + cnt ); } // \ru Удалить лишнюю память. \en Free the unnecessary memory. virtual void Adjust() { - #ifdef C3D_STANDARD_CXX_11_PARTIAL points.shrink_to_fit(); - #endif } // \ru Очистить полигон удалив все точки. \en Clear the polygon by deleting all the points. virtual void Flush(); @@ -177,7 +175,7 @@ public: // \ru Общие функции примитива. \en Common functions of the primitive. virtual MbePrimitiveType IsA() const; // \ru Вернуть тип объекта \en Get the object type. - virtual MbFloatPolygon3D & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; // \ru Создать копию объекта \en Create a copy of the object + virtual MbFloatPolygon3D & Duplicate( MbRegDuplicate * iReg = nullptr ) const; // \ru Создать копию объекта \en Create a copy of the object virtual void Transform( const MbMatrix3D & ); // \ru Преобразовать полигон согласно матрице \en Transform polygon according to the matrix virtual void Move ( const MbVector3D & ); // \ru Сдвиг полигона \en Translation of the polygon. virtual void Rotate ( const MbAxis3D &, double angle ); // \ru Поворот полигона вокруг оси \en Rotation of the polygon around an axis @@ -195,9 +193,7 @@ public: virtual void Reserve( size_t cnt ) { points.reserve( points.size() + cnt ); } // \ru Удалить лишнюю память. \en Free the unnecessary memory. virtual void Adjust() { - #ifdef C3D_STANDARD_CXX_11_PARTIAL points.shrink_to_fit(); - #endif } // \ru Очистить полигон удалив все точки. \en Clear the polygon by deleting all the points. virtual void Flush(); diff --git a/C3d/Include/mesh_primitive.h b/C3d/Include/mesh_primitive.h index 2f7e1c1..e0ae3b9 100644 --- a/C3d/Include/mesh_primitive.h +++ b/C3d/Include/mesh_primitive.h @@ -149,7 +149,7 @@ public: \return \ru Копия объекта. \en The object copy. \~ */ - virtual MbPrimitive & Duplicate( MbRegDuplicate * iReg = c3d_null ) const = 0; + virtual MbPrimitive & Duplicate( MbRegDuplicate * iReg = nullptr ) const = 0; /** \brief \ru Преобразовать примитив согласно матрице. \en Transform primitive according to the matrix. \~ @@ -246,13 +246,13 @@ public: bool NearestType( MbeSpaceType sType, MbeTopologyType tType, MbePlaneType pType ) const; /// \ru Получить пространственный объект, для которого построен примитив. \en Get spatial object for which the primitive is constructed. - const MbSpaceItem * SpaceItem() const { return ((parentItem != c3d_null && parentItem->RefType() == rt_SpaceItem) ? (const MbSpaceItem *)parentItem : c3d_null); } + const MbSpaceItem * SpaceItem() const { return ((parentItem != nullptr && parentItem->RefType() == rt_SpaceItem) ? (const MbSpaceItem *)parentItem : nullptr); } /// \ru Получить двумерный объект, для которого построен примитив. \en Get two-dimensional object for which the primitive is constructed. - const MbPlaneItem * PlaneItem() const { return ((parentItem != c3d_null && parentItem->RefType() == rt_PlaneItem) ? (const MbPlaneItem *)parentItem : c3d_null); } + const MbPlaneItem * PlaneItem() const { return ((parentItem != nullptr && parentItem->RefType() == rt_PlaneItem) ? (const MbPlaneItem *)parentItem : nullptr); } /// \ru Получить топологический объект, для которого построен примитив. \en Get the topological object for which the primitive is constructed. - const MbTopItem * TopItem() const { return ((parentItem != c3d_null && parentItem->RefType() == rt_TopItem) ? (const MbTopItem *)parentItem : c3d_null); } + const MbTopItem * TopItem() const { return ((parentItem != nullptr && parentItem->RefType() == rt_TopItem) ? (const MbTopItem *)parentItem : nullptr); } /// \ru Получить объект геометрической модели, для которого построен примитив. \en Get geometric model object for which the primitive is constructed. - const MbItem * Item() const { return ((parentItem != c3d_null && parentItem->RefType() == rt_SpaceItem) ? (static_cast(parentItem)) : c3d_null); } + const MbItem * Item() const { return ((parentItem != nullptr && parentItem->RefType() == rt_SpaceItem) ? (static_cast(parentItem)) : nullptr); } /// \ru Чтение примитива из потока. \en Reading of primitive from the stream. void PrimitiveRead ( reader & ); @@ -291,7 +291,7 @@ public: // \ru Общие функции примитива. \en Common functions of the primitive. virtual MbePrimitiveType Type() const; // \ru Тип объекта. \en A type of an object. virtual MbePrimitiveType IsA() const = 0; // \ru Тип объекта. \en A type of an object. - virtual MbApex3D & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Создать копию объекта. \en Create a copy of the object. + virtual MbApex3D & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Создать копию объекта. \en Create a copy of the object. virtual void Transform( const MbMatrix3D & ) = 0; // \ru Преобразовать согласно матрице. \en Transform according to the matrix. virtual void Move ( const MbVector3D & ) = 0; // \ru Сдвинуть вдоль вектора. \en Translate along a vector. virtual void Rotate ( const MbAxis3D &, double angle ) = 0; // \ru Повернуть вокруг оси на угол. \en Rotate about an axis by an angle. @@ -356,7 +356,7 @@ public: // \ru Общие функции примитива. \en Common functions of the primitive. virtual MbePrimitiveType IsA() const; // \ru Тип объекта. \en A type of an object. - virtual MbExactApex3D & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Создать копию объекта. \en Create a copy of the object. + virtual MbExactApex3D & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Создать копию объекта. \en Create a copy of the object. virtual void Transform( const MbMatrix3D & ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. virtual void Move ( const MbVector3D & ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. virtual void Rotate ( const MbAxis3D &, double angle ); // \ru Повернуть вокруг оси на угол. \en Rotate about an axis by an angle. @@ -422,7 +422,7 @@ public: // \ru Общие функции примитива. \en Common functions of the primitive. virtual MbePrimitiveType IsA() const; // \ru Тип объекта. \en A type of an object. - virtual MbFloatApex3D & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Создать копию объекта. \en Create a copy of the object. + virtual MbFloatApex3D & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Создать копию объекта. \en Create a copy of the object. virtual void Transform( const MbMatrix3D & ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. virtual void Move ( const MbVector3D & ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. virtual void Rotate ( const MbAxis3D &, double angle ); // \ru Повернуть вокруг оси на угол. \en Rotate about an axis by an angle. @@ -493,7 +493,7 @@ public: // \ru Общие функции примитива. \en Common functions of the primitive. virtual MbePrimitiveType Type() const; // \ru Вернуть тип объекта \en Get the object type. virtual MbePrimitiveType IsA() const = 0; // \ru Вернуть тип объекта \en Get the object type. - virtual MbPolygon3D & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Создать копию объекта \en Create a copy of the object + virtual MbPolygon3D & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Создать копию объекта \en Create a copy of the object virtual void Transform( const MbMatrix3D & ) = 0; // \ru Преобразовать полигон согласно матрице \en Transform polygon according to the matrix virtual void Move ( const MbVector3D & ) = 0; // \ru Сдвиг полигона \en Translation of the polygon. virtual void Rotate ( const MbAxis3D &, double angle ) = 0; // \ru Поворот полигона вокруг оси \en Rotation of the polygon around an axis @@ -672,7 +672,7 @@ public: \{ */ virtual MbePrimitiveType Type() const; // \ru Тип объекта. \en A type of an object. virtual MbePrimitiveType IsA() const = 0; // \ru Тип объекта. \en A type of an object. - virtual MbGrid & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Создать копию объекта. \en Create a copy of the object. + virtual MbGrid & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Создать копию объекта. \en Create a copy of the object. virtual void Transform( const MbMatrix3D & ) = 0; // \ru Преобразовать сетку согласно матрице. \en Transform mesh according to the matrix. virtual void Move ( const MbVector3D & ) = 0; // \ru Сдвиг сетки. \en Move mesh. virtual void Rotate ( const MbAxis3D &, double angle ) = 0; // \ru Поворот сетки вокруг оси. \en Rotation of mesh about an axis. @@ -1086,9 +1086,9 @@ public: virtual void Init( const MbGrid & grid ) = 0; /// \ru Выдать адрес начала массива. \en Get the address of the beginning of the array. - const MbTriangle * GetTrianglesAddr() const { return (!triangles.empty() ? &(triangles[0]) : c3d_null); } + const MbTriangle * GetTrianglesAddr() const { return (!triangles.empty() ? &(triangles[0]) : nullptr); } /// \ru Выдать адрес начала массива. \en Get the address of the beginning of the array. - const MbQuadrangle * GetQuadranglesAddr() const { return (!quadrangles.empty() ? &(quadrangles[0]) : c3d_null); } + const MbQuadrangle * GetQuadranglesAddr() const { return (!quadrangles.empty() ? &(quadrangles[0]) : nullptr); } /// \ru Выдать адрес начала массива. \en Get the address of the beginning of the array. virtual const MbCartPoint3D * GetExactPointsAddr() const = 0; /// \ru Выдать адрес начала массива. \en Get the address of the beginning of the array. diff --git a/C3d/Include/mip_solid_mass_inertia.h b/C3d/Include/mip_solid_mass_inertia.h index f1b360a..ff5eedf 100644 --- a/C3d/Include/mip_solid_mass_inertia.h +++ b/C3d/Include/mip_solid_mass_inertia.h @@ -332,7 +332,7 @@ private : const MbSolid & solid; ///< \ru Тело. \en A solid. double density; ///< \ru Плотность или удельная масса на единицу площади. \en Density or mass per unit square. MbMatrix3D matrix; ///< \ru Матрица преобразования тела в систему ближайшей сборки (хозяина). \en A matrix of solid transformation to the coordinate system of nearest assembly (owner). - InertiaProperties * properties; ///< \ru Характеристики тела (может быть c3d_null). \en Solid properties (can be c3d_null). + InertiaProperties * properties; ///< \ru Характеристики тела (может быть nullptr). \en Solid properties (can be nullptr). bool ready; ///< \ru Флаг, показывающий, что характеристики не требуется считать. \en Flag of already calculated properties. public: @@ -395,7 +395,7 @@ public: \en A run progress indicator. For termination of slow computations. \~ */ void CalculateAdditiveValues( double deviateAngle, InertiaProperties & mp, - IfProgressIndicator * progress = c3d_null ) const; + IfProgressIndicator * progress = nullptr ) const; /** \} */ // \ru Объявление конструктора копирования и оператора присваивания без реализации, чтобы не было присваивания по умолчанию. \en The declaration without Implementation of the copy constructor and assignment operator to prevent an assignment by default. @@ -416,7 +416,7 @@ private : RPArray assemblies; ///< \ru Подсборки. \en Subassemblies. RPArray solids; ///< \ru Тела сборки. \en Solids in an assembly. MbMatrix3D matrix; ///< \ru Матрица преобразования сборки в систему ближайшей сборки (хозяина). \en A matrix of assembly transformation to the coordinate system of nearest assembly (owner). - InertiaProperties * properties; ///< \ru Характеристики сборки (может быть c3d_null). \en Assembly properties (can be c3d_null). + InertiaProperties * properties; ///< \ru Характеристики сборки (может быть nullptr). \en Assembly properties (can be nullptr). bool ready; ///< \ru Характеристики не требуется считать. \en Properties already calculated. public: @@ -488,7 +488,7 @@ public: \en A run progress indicator. For termination of slow computations. \~ */ void CalculateAdditiveValues( double deviateAngle, InertiaProperties & mp, - IfProgressIndicator * progress = c3d_null ) const; + IfProgressIndicator * progress = nullptr ) const; /** \} */ // \ru Объявление конструктора копирования и оператора присваивания без реализации, чтобы не было присваивания по умолчанию. \en The declaration without Implementation of the copy constructor and assignment operator to prevent an assignment by default. @@ -520,7 +520,7 @@ MATH_FUNC (void) MassInertiaProperties( const MbSolid * solid, double density, double deviateAngle, // (0.35 - 0.01) InertiaProperties & mp, - IfProgressIndicator * progress = c3d_null ); + IfProgressIndicator * progress = nullptr ); //------------------------------------------------------------------------------ @@ -540,9 +540,9 @@ MATH_FUNC (void) MassInertiaProperties( const MbSolid * solid, Количество элементов в массиве должно совпадать с количеством тел. \en Matrices of solids transformation to global coordinate system.\n Count of elements in array must be equal to count of solids. \~ - \param[in] mpSolids - \ru Имеющиеся характеристики тел. Может содержать c3d_null.\n + \param[in] mpSolids - \ru Имеющиеся характеристики тел. Может содержать nullptr.\n Количество элементов в массиве должно совпадать с количеством тел. - \en Calculated properties of solids. Can contain c3d_null.\n + \en Calculated properties of solids. Can contain nullptr.\n Count of elements in array must be equal to count of solids. \~ \param[in] deviateAngle - \ru Параметр управления точностью расчёта - угловое отклонение нормали поверхности или касательных кривой на участке численного интегрирования. \en Tolerance - the angular deviation of surface or curve in the neighboring points on the region of numerical integration. \~ @@ -559,7 +559,7 @@ MATH_FUNC (void) MassInertiaProperties( const RPArray & solid const RPArray & mpSolids, double deviateAngle, // (0.35 - 0.01) InertiaProperties & mp, - IfProgressIndicator * progress = c3d_null ); + IfProgressIndicator * progress = nullptr ); //------------------------------------------------------------------------------ @@ -583,7 +583,7 @@ MATH_FUNC (void) MassInertiaProperties( const RPArray & solid MATH_FUNC (void) MassInertiaProperties( const AssemblyMIAttire & assembly, double deviateAngle, // (0.35 - 0.01) InertiaProperties & mp, - IfProgressIndicator * progress = c3d_null ); + IfProgressIndicator * progress = nullptr ); //------------------------------------------------------------------------------ diff --git a/C3d/Include/model.h b/C3d/Include/model.h index 655ef74..becdfc9 100644 --- a/C3d/Include/model.h +++ b/C3d/Include/model.h @@ -83,13 +83,13 @@ public : virtual MbeImplicationType ImplicationType() const; /// \ru Создать копию. \en Create a copy. - MbModel & Duplicate( MbRegDuplicate * = c3d_null ) const; + MbModel & Duplicate( MbRegDuplicate * = nullptr ) const; /// \ru Преобразовать согласно матрице. \en Transform according to the matrix. - void Transform( const MbMatrix3D &, MbRegTransform * iReg = c3d_null ); + void Transform( const MbMatrix3D &, MbRegTransform * iReg = nullptr ); /// \ru Сдвинуть вдоль вектора. \en Translate along a vector. - void Move ( const MbVector3D &, MbRegTransform * iReg = c3d_null ); + void Move ( const MbVector3D &, MbRegTransform * iReg = nullptr ); /// \ru Повернуть вокруг оси. \en Rotate about an axis. - void Rotate ( const MbAxis3D &, double angle, MbRegTransform * iReg = c3d_null ); + void Rotate ( const MbAxis3D &, double angle, MbRegTransform * iReg = nullptr ); /// \ru Вычислить расстояние до точки. \en Calculate the distance to a point. double DistanceToPoint ( const MbCartPoint3D & ) const; /// \ru Добавь свой габарит в габаритный куб. \en Include your own bounding box into bounding box. @@ -459,11 +459,11 @@ public : \en General-purpose algorithm traversing the model graph in depth. */ void Traverse( ItModelVisitor & ) const; /// \ru Преобразовать селектирование объекты по матрице. \en Transform selected objects by matrix. - void TransformSelected( const MbMatrix3D &, MbRegTransform * = c3d_null ); + void TransformSelected( const MbMatrix3D &, MbRegTransform * = nullptr ); /// \ru Сдвинуть выбранные объекты. \en Move selected objects. - void MoveSelected( const MbVector3D &, MbRegTransform * = c3d_null ); + void MoveSelected( const MbVector3D &, MbRegTransform * = nullptr ); /// \ru Повернуть выбранные объекты вокруг оси. \en Rotate selected objects around an axis. - void RotateSelected( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + void RotateSelected( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); /** \brief \ru Отцепить все выбранные объекты. \en Detach all selected objects. \~ @@ -592,7 +592,7 @@ void MbModel::GetItems( Items & items ) const { items.reserve( modelItems.size() ); for ( NameItemArray::const_iterator iter = modelItems.begin(); iter != modelItems.end(); ++iter ) { - if ( iter->second != c3d_null ) + if ( iter->second != nullptr ) items.push_back( iter->second ); } } @@ -608,7 +608,7 @@ void MbModel::DetachItems( Items & items ) NameItemArray::const_iterator endItem = modelItems.end(); for ( ; iter != endItem; ++iter ) { MbItem * item = iter->second; - if ( item != c3d_null ) { + if ( item != nullptr ) { item->DecRef(); items.push_back( item ); } diff --git a/C3d/Include/model_item.h b/C3d/Include/model_item.h index b97b564..75fc8f1 100644 --- a/C3d/Include/model_item.h +++ b/C3d/Include/model_item.h @@ -118,10 +118,10 @@ public : virtual MbeSpaceType Type() const; // \ru Групповой тип объекта. \en Group type of object. virtual MbeSpaceType Family() const; // \ru Семейство объекта. \en Family of object. virtual MbeImplicationType ImplicationType() const; // \ru Тип контейнера атрибутов - классификатор наследников. \en Type of an attribute container is a classifier of inheritors. - virtual MbSpaceItem & Duplicate ( MbRegDuplicate * = c3d_null ) const = 0; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ) = 0; // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ) = 0; // \ru Сдвинуть вдоль вектора. \en Translate along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ) = 0; // \ru Повернуть вокруг оси. \en Rotate about an axis. + virtual MbSpaceItem & Duplicate ( MbRegDuplicate * = nullptr ) const = 0; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ) = 0; // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ) = 0; // \ru Сдвинуть вдоль вектора. \en Translate along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ) = 0; // \ru Повернуть вокруг оси. \en Rotate about an axis. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const = 0; // \ru Являются ли объекты равными? \en Are the objects equal? virtual bool SetEqual ( const MbSpaceItem & init ) = 0; // \ru Сделать объекты равными. \en Make the objects equal. virtual double DistanceToPoint ( const MbCartPoint3D & ) const = 0; // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. @@ -171,8 +171,8 @@ public : \en Create object by the history tree. \~ \param[in] sameShell - \ru Полнота копирования элементов. \en Whether to perform complete copying of elements while constructing. \~ - \param[out] items - \ru Контейнер для складывания элементов невыполненных построений (может быть c3d_null). - \en Container for the elements of not performed constructions (can be c3d_null). \~ + \param[out] items - \ru Контейнер для складывания элементов невыполненных построений (может быть nullptr). + \en Container for the elements of not performed constructions (can be nullptr). \~ \return \ru Перестроен ли объект. \en Whether an object is constructed. \~ \ingroup Model_Items @@ -437,7 +437,7 @@ public : \en Registrator. \~ \ingroup Model_Items */ - virtual void TransformSelected( const MbMatrix3D & matr, MbRegTransform * iReg = c3d_null ); + virtual void TransformSelected( const MbMatrix3D & matr, MbRegTransform * iReg = nullptr ); /** \brief \ru Сдвинуть выбранный объект вдоль вектора. \en Move selected object along a vector. \~ @@ -451,7 +451,7 @@ public : \en Registrator. \~ \ingroup Model_Items */ - virtual void MoveSelected( const MbVector3D & to, MbRegTransform * iReg = c3d_null ); + virtual void MoveSelected( const MbVector3D & to, MbRegTransform * iReg = nullptr ); /** \brief \ru Повернуть выбранный объект вокруг оси на заданный угол. \en Rotate selected object by a given angle about an axis. \~ @@ -467,7 +467,7 @@ public : \en Registrator. \~ \ingroup Model_Items */ - virtual void RotateSelected( const MbAxis3D & axis, double angle, MbRegTransform * iReg = c3d_null ); + virtual void RotateSelected( const MbAxis3D & axis, double angle, MbRegTransform * iReg = nullptr ); /// \ru Дать матрицу преобразования из локальной системы объекта. \en Get transform matrix from local coordinate system of object. virtual bool GetMatrixFrom( MbMatrix3D & from ) const; @@ -558,7 +558,7 @@ bool DeleteCreatorsCopies( ItemsVector & items, double eps = LENGTH_EPSILON ) if ( itemsCnt > 1 ) { for ( size_t i = 0; i < itemsCnt; ++i ) { MbItem * item1 = items[i]; - if ( item1 == c3d_null ) + if ( item1 == nullptr ) continue; creators1.clear(); item1->GetCreators( creators1 ); @@ -567,7 +567,7 @@ bool DeleteCreatorsCopies( ItemsVector & items, double eps = LENGTH_EPSILON ) if ( creatorsCnt1 > 0 ) { for ( size_t j = i + 1; j < itemsCnt; ++j ) { MbItem * item2 = items[j]; - if ( item2 == c3d_null ) + if ( item2 == nullptr ) continue; creators2.clear(); item2->GetCreators( creators2 ); @@ -577,11 +577,11 @@ bool DeleteCreatorsCopies( ItemsVector & items, double eps = LENGTH_EPSILON ) bool replace = false; for ( size_t k1 = 0; k1 < creatorsCnt1; ++k1 ) { MbCreator * creator1 = creators1[k1]; - if ( creator1 == c3d_null ) + if ( creator1 == nullptr ) continue; for ( size_t k2 = k1 + 1; k2 < creatorsCnt2; ++k2 ) { MbCreator * creator2 = creators2[k2]; - if ( creator2 == c3d_null ) + if ( creator2 == nullptr ) continue; if ( (creator1 != creator2) && creator1->IsSame( *creator2, eps ) ) { creators2[k2] = creators1[k1]; diff --git a/C3d/Include/model_tree.h b/C3d/Include/model_tree.h index 8eb3674..10296a9 100644 --- a/C3d/Include/model_tree.h +++ b/C3d/Include/model_tree.h @@ -140,11 +140,11 @@ public: virtual const IModelTreeNode * GetModelTreeNode() const { return m_subtree; } // \ru Доступ к информации об исполнении. \en Access to the embodiment info. - virtual const MbItemData& GetEmbodimentData() const { C3D_ASSERT( m_subtree != c3d_null ); return m_subtree->GetData(); } + virtual const MbItemData& GetEmbodimentData() const { C3D_ASSERT( m_subtree != nullptr ); return m_subtree->GetData(); } // \ru Построить дерево модели, которое содержится в данном исполнении. // \en Build a tree of a model which is contained in a given embodiment. - virtual std_unique_ptr GetEmbodiment() const; + virtual std::unique_ptr GetEmbodiment() const; private: MbEmbodimentNode(); @@ -195,15 +195,15 @@ public: // \ru Построить дерево из узлов, выбранных по фильтрам. В случае дерева исполнений, функция работает с первым исполнением. // \en Build a tree with nodes, selected by filters. In case of embodiment tree, the function works with the first embodiment. - virtual std_unique_ptr GetFilteredTree ( const std::vector& filters ) const; + virtual std::unique_ptr GetFilteredTree ( const std::vector& filters ) const; - // \ru Построить дерево по заданным узлам. Не применимо для дерева исполнений (в этом случае возвращает c3d_null). - // \en Build a tree for given nodes. Not applicable to embodiment tree (in this case, returns c3d_null). - virtual std_unique_ptr GetFilteredTree ( std::vector& nodes ) const; + // \ru Построить дерево по заданным узлам. Не применимо для дерева исполнений (в этом случае возвращает nullptr). + // \en Build a tree for given nodes. Not applicable to embodiment tree (in this case, returns nullptr). + virtual std::unique_ptr GetFilteredTree ( std::vector& nodes ) const; - // \ru Выдать указатель на дерево исполнений. Выдает c3d_null, если не применимо (нет исполнений). - // \en Get pointer to embodiments tree. Return c3d_null if not applicable (no embodiments). - virtual const IEmbodimentTree* GetEmbodimentsTree() const { return GetType() == mtt_Embodiment ? &m_embTree : c3d_null; } + // \ru Выдать указатель на дерево исполнений. Выдает nullptr, если не применимо (нет исполнений). + // \en Get pointer to embodiments tree. Return nullptr if not applicable (no embodiments). + virtual const IEmbodimentTree* GetEmbodimentsTree() const { return GetType() == mtt_Embodiment ? &m_embTree : nullptr; } /// \ru Версия дерева. \en Tree version. virtual VERSION GetVersion() { return m_currentVersion; } @@ -225,7 +225,7 @@ public: /// \param node - a node with data. /// \param added - filled if non-null (true - if a node added, false - a node already exists). /// \return - a pointer to the tree node. - MbTreeNode* AddNode ( const MbTreeNode& node, bool* added = c3d_null ); + MbTreeNode* AddNode ( const MbTreeNode& node, bool* added = nullptr ); /// \ru Добавить узел с указанными данными, если узел с такими данными не существует. /// \param node - данные. @@ -235,7 +235,7 @@ public: /// \param node - a data. /// \param added - filled if non-null (true - if a node added, false - a node already exists). /// \return - a pointer to the tree node. - MbTreeNode* AddNode ( const MbItemData& data, bool* added = c3d_null ); + MbTreeNode* AddNode ( const MbItemData& data, bool* added = nullptr ); /// \ru Доступ к узлам дерева, упорядоченным по данным. /// \en Access to nodes of the tree, ordered by data. diff --git a/C3d/Include/model_tree_data.h b/C3d/Include/model_tree_data.h index b4d4657..783df6f 100644 --- a/C3d/Include/model_tree_data.h +++ b/C3d/Include/model_tree_data.h @@ -151,8 +151,8 @@ public: //---------------------------------------------------------------------------------------- -/// \ru Создать объект пользовательских данных для атрибута. Возвращает c3d_null, если данный атрибут не поддерживается деревом модели. -/// \en Create user data object for the attribute. Return c3d_null if this attribute is not supported in the model tree. +/// \ru Создать объект пользовательских данных для атрибута. Возвращает nullptr, если данный атрибут не поддерживается деревом модели. +/// \en Create user data object for the attribute. Return nullptr if this attribute is not supported in the model tree. //--- MATH_FUNC( ItemDataBase* ) CreateAttributeData( MbAttribute* attr ); @@ -160,7 +160,7 @@ MATH_FUNC( ItemDataBase* ) CreateAttributeData( MbAttribute* attr ); /// \ru Прочитать атрибуты для узла дерева. /// \en Read attributes for the model tree node. //--- -MATH_FUNC( std_unique_ptr ) GetTreeNodeAttributes( const IModelTreeNode * node, reader& in ); +MATH_FUNC( std::unique_ptr ) GetTreeNodeAttributes( const IModelTreeNode * node, reader& in ); //---------------------------------------------------------------------------------------- @@ -818,8 +818,8 @@ inline writer& operator << ( writer & out, const UserDataMap& itemmap ) while ( !curIter.Empty() ) { MbeItemDataType type = curIter.Key(); ItemDataBase* item = curIter.Value(); - C3D_ASSERT( type < idtCount && item != c3d_null ); - if ( type < idtCount && item != c3d_null ) { + C3D_ASSERT( type < idtCount && item != nullptr ); + if ( type < idtCount && item != nullptr ) { out << (int)type; // \ru Тип данных. \en A data type. size_t dataSize = item->Size( out ); ::WriteCOUNT( out, dataSize );// \ru Размер данных. \en Data size. diff --git a/C3d/Include/multiline.h b/C3d/Include/multiline.h index d3f646e..b9c8e3a 100644 --- a/C3d/Include/multiline.h +++ b/C3d/Include/multiline.h @@ -441,7 +441,7 @@ public: // --- class MATH_CLASS MbMultiline : public MbPlaneItem { private: - MbContour * basisCurve; ///< \ru Базовая кривая (БК) (всегда не c3d_null). \en Base curve (BC) (always not c3d_null). + MbContour * basisCurve; ///< \ru Базовая кривая (БК) (всегда не nullptr). \en Base curve (BC) (always not nullptr). SArray vertices; ///< \ru Массив вершин мультилинии (согласован с вершинами БК). \en Array of vertices of a multiline (agreed with the vertices of the base curve). CSSArray equidRadii; ///< \ru Сортированный массив радиусов эквидистантных кривых. \en Sorted array of radii of equidistant curves. StMLTipParams begTipParams; ///< \ru Параметры законцовки в начале мультилинии (начале БК). \en Parameters of a tip at the beginning of a multiline ( the beginning of base curve). @@ -450,7 +450,7 @@ private: bool isTransparent; ///< \ru "Прозрачная" ли мультилиния. \en Whether the multiline is "transparent". // \ru Объекты, которые составляют мультилинию (рекомендовали не делать их mutable, а писать и читать) \en Objects which constitute a multiline (recommended to read and write and not to make them mutable) // \ru ЭТИ ОБЪЕКТЫ НЕЛЬЗЯ МЕНЯТЬ СНАРУЖИ!!! \en THESE OBJECTS CAN'T BE CHANGED OUTSIDE!!! - PArray curves; ///< \ru Кривые мультилинии (согласован с equidRadii) (всегда не c3d_null). \en Curves of a multiline (agreed with the 'equidRadii') (always not c3d_null). + PArray curves; ///< \ru Кривые мультилинии (согласован с equidRadii) (всегда не nullptr). \en Curves of a multiline (agreed with the 'equidRadii') (always not nullptr). PArray tipCurves; ///< \ru Законцовки в вершинах мультилинии (согласован с vertices). \en Tips at vertices of a multiline (agreed with 'vertices'). MbContour * begTipCurve; ///< \ru Законцовка в начале мультилинии (начале БК). \en Tip at the beginning of a multiline (beginning of the base curve). MbContour * endTipCurve; ///< \ru Законцовка в конце мультилинии (конце БК). \en Tip at the end of a multiline (end of the base curve). @@ -513,10 +513,10 @@ public: virtual bool IsSame ( const MbPlaneItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными. \en Determine whether objects are equal. virtual bool IsSimilar ( const MbPlaneItem & item ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. virtual bool SetEqual ( const MbPlaneItem & item ); // \ru Сделать объекты равными. \en Make the objects equal. - virtual void Transform ( const MbMatrix & matr, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null );// \ru Преобразовать объект согласно матрице. \en Transform an object according to the matrix. - virtual void Move ( const MbVector & to, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null );// \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. - virtual void Rotate ( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Повернуть вокруг точки на угол. \en Rotate at angle around a point. - virtual MbPlaneItem & Duplicate ( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию объекта. \en Create a copy of the object. + virtual void Transform ( const MbMatrix & matr, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr );// \ru Преобразовать объект согласно матрице. \en Transform an object according to the matrix. + virtual void Move ( const MbVector & to, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr );// \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. + virtual void Rotate ( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Повернуть вокруг точки на угол. \en Rotate at angle around a point. + virtual MbPlaneItem & Duplicate ( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию объекта. \en Create a copy of the object. virtual void AddYourGabaritTo( MbRect & r ) const; // \ru Добавить свой габарит в присланный габарит. \en Add your own bounding box into the given bounding box. virtual bool IsVisibleInRect ( const MbRect & r, bool exact = false ) const; // \ru Виден ли объект в заданном прям-ке. \en Whether the object is visible in the given rectangle. @@ -1319,7 +1319,7 @@ private: /// \ru Насчитать все кривые и все законцовки в вершинах. \en Calculate all curves and all tips at vertices. void CalculateCurvesAndTipCurves(); /// \ru Насчитать законцовку в начале. \en Calculate tip at the beginning. - void CalculateBegTipCurve ( SArray * changeCurvesNumbers = c3d_null ); + void CalculateBegTipCurve ( SArray * changeCurvesNumbers = nullptr ); /// \ru Насчитать законцовку в конце. \en Calculate tip at the end. void CalculateEndTipCurve (); @@ -1576,7 +1576,7 @@ MATH_FUNC (bool) BreakMultilineNParts( const MbMultiline & multiline, size_t par // --- inline bool MbMultiline::IsDegenerate( double lenEps ) const { return ( (minNotDegInd == SYS_MAX_T) || // \ru Значит, и maxNotDegInd == SYS_MAX_T \en So maxNotDegInd == SYS_MAX_T - (basisCurve != c3d_null && basisCurve->IsDegenerate(lenEps)) ); + (basisCurve != nullptr && basisCurve->IsDegenerate(lenEps)) ); } diff --git a/C3d/Include/name_check.h b/C3d/Include/name_check.h index c270156..227ea3f 100644 --- a/C3d/Include/name_check.h +++ b/C3d/Include/name_check.h @@ -155,7 +155,7 @@ struct NameIntersectionInfo { const MbName * name; ///< \ru Имя объектов. \en A name of objects. size_t intersections; ///< \ru Количество совпадений. \en The count of coincidences. - NameIntersectionInfo() : name( c3d_null ), intersections( 0 ) {} + NameIntersectionInfo() : name( nullptr ), intersections( 0 ) {} }; diff --git a/C3d/Include/name_contour_tree.h b/C3d/Include/name_contour_tree.h index ffcad24..ea221af 100644 --- a/C3d/Include/name_contour_tree.h +++ b/C3d/Include/name_contour_tree.h @@ -31,7 +31,7 @@ private: bool intersectChildren; // \ru Пересекаются ли внутренние контуры \en Are inner contours intersect public: /// \ru Конструктор. \en Constructor. - MbNamedContoursTree( const MbContour * con = c3d_null, bool o = true ); + MbNamedContoursTree( const MbContour * con = nullptr, bool o = true ); /// \ru Деструктор. \en Destructor. ~MbNamedContoursTree(); public: @@ -40,7 +40,7 @@ public: /// \ru Получить количество деревьев. \en Get count of trees. size_t GetChildrenCount() const { return children.Count(); } /// \ru Получить дерево контуров по индексу. \en Get contour tree by an index. - const MbNamedContoursTree * GetTreeContour( size_t index ) const { return (GetChildrenCount() >= index) ? children[index] : c3d_null; } + const MbNamedContoursTree * GetTreeContour( size_t index ) const { return (GetChildrenCount() >= index) ? children[index] : nullptr; } /// \ru Проверить группы контуров на не пересечение. \en Check groups of contours for absence of intersection. MbResultType CheckProfiles( bool base ) const; /// \ru Получить указатель на внешний контур. \en Get the pointer to the external contour. @@ -64,8 +64,8 @@ private: \en Get the biggest contour. \~ \details \ru Выдать самый большой контур по длине диагонали габарита. \en Get the biggest contour by bounding box diagonal length. \~ - \return \ru Возвращает указатель на найденный контур или c3d_null. - \en Returns pointer to the found contour or c3d_null. \~ + \return \ru Возвращает указатель на найденный контур или nullptr. + \en Returns pointer to the found contour or nullptr. \~ \ingroup Names */ // --- diff --git a/C3d/Include/name_item.h b/C3d/Include/name_item.h index 45628f3..cc0d651 100644 --- a/C3d/Include/name_item.h +++ b/C3d/Include/name_item.h @@ -334,7 +334,7 @@ void MbIdArr::operator += ( const MbIdArr & other ) */ // --- class MATH_CLASS MbName { public: - typedef std_unique_ptr UniqueNamePtr; + typedef std::unique_ptr UniqueNamePtr; public : /// \ru Индекс имени. \en A name index. @@ -789,7 +789,7 @@ public: \param[in] copy - \ru Имя копии. \en The name of the copy. \~ */ - MbNamePair( const MbName * copy ) : gageName( c3d_null ), copyName( copy ), copyHash( c3d::SIMPLENAME_MAX ) {} + MbNamePair( const MbName * copy ) : gageName( nullptr ), copyName( copy ), copyHash( c3d::SIMPLENAME_MAX ) {} /// \ru . \en . /** \brief \ru Конструктор. \en Constructor. \~ @@ -798,13 +798,13 @@ public: \param[in] copy - \ru Хэш имени копии. \en The hash of the name of the copy. \~ */ - MbNamePair( SimpleName copy ) : gageName( c3d_null ), copyName( c3d_null ), copyHash( copy ) {} + MbNamePair( SimpleName copy ) : gageName( nullptr ), copyName( nullptr ), copyHash( copy ) {} /// \ru Деструктор. \en Destructor. ~MbNamePair() {} public: /// \ru Обнулить имя оригинала и имя копии. \en Set name of original and of its duplicate to null. - void SetNull() { gageName = c3d_null; copyName = c3d_null; copyHash = c3d::SIMPLENAME_MAX; } + void SetNull() { gageName = nullptr; copyName = nullptr; copyHash = c3d::SIMPLENAME_MAX; } /// \ru Оператор сравнения. \en Comparison operator. bool operator == ( const MbNamePair & other ) const; /// \ru Оператор меньше. \en "Less than" operator. @@ -814,7 +814,7 @@ public: { if ( copyName ) copyHash = Prepare(*copyName).Hash(); - return copyHash; + return copyHash; // SKIP_SA } /** \brief \ru Правило приготовления имен. \en Names prepare rules. \~ @@ -829,7 +829,7 @@ public: { MbName ret( name ); ret.SetMainName( c3d::SIMPLENAME_MAX ); - return ret; + return ret; // SKIP_SA } }; @@ -871,8 +871,8 @@ public: */ bool AddNameData( const MbName * orig, const MbName * copy ) { - C3D_ASSERT( (orig != c3d_null) && (copy != c3d_null) ); - if ( (orig != c3d_null) && (copy != c3d_null) ) { + C3D_ASSERT( (orig != nullptr) && (copy != nullptr) ); + if ( (orig != nullptr) && (copy != nullptr) ) { size_t cnt = checkList.size(); checkList.Add( MbNamePair( orig, copy ) ); if ( checkList.size() > cnt ) @@ -977,7 +977,7 @@ public: , version() #ifdef ORIGINAL_MAIN_NAME , original( c3d::SIMPLENAME_MAX ) - , nameList( c3d_null ) + , nameList( nullptr ) #endif // ORIGINAL_MAIN_NAME { defName.SetMainName( mn ); @@ -996,7 +996,7 @@ public: , version() #ifdef ORIGINAL_MAIN_NAME , original( c3d::SIMPLENAME_MAX ) - , nameList( c3d_null ) + , nameList( nullptr ) #endif // ORIGINAL_MAIN_NAME { defName.MakeTemplate(); @@ -1181,11 +1181,11 @@ public: MbNameMaker GetOriginalNameMaker() const; /// \ru Удалить ненужные элементы по именам копий. \en Clean up unnecessary pairs by name copies. bool CleanNameList( c3d::ConstNamesVector & delNamesCopies ) const { - return ((nameList != c3d_null) ? nameList->Clean( delNamesCopies ) : false); + return ((nameList != nullptr) ? nameList->Clean( delNamesCopies ) : false); } /// \ru Заменить имена копий. \en Replace names copies. bool ReplaceNameList( const MbName & newNameCopies, const c3d::ConstNamesVector & oldNamesCopies ) const { - return ((nameList != c3d_null) ? nameList->Replace( newNameCopies, oldNamesCopies ) : false); + return ((nameList != nullptr) ? nameList->Replace( newNameCopies, oldNamesCopies ) : false); } #endif // ORIGINAL_MAIN_NAME @@ -1524,7 +1524,7 @@ reader & operator >> ( reader & in, MbPath & ref ) if ( in.good() && count ) { ref.SetSize( count, true/*clear*/ ); - if ( (ref.GetAddr() == c3d_null) && (count >= SYS_MAX_UINT32) ) // We could not allocate the required amount of memory + if ( (ref.GetAddr() == nullptr) && (count >= SYS_MAX_UINT32) ) // We could not allocate the required amount of memory in.setState( io::outOfMemory ); else { for ( size_t i = 0; i < count && in.good(); ++i ) { diff --git a/C3d/Include/op_curve_parameter.h b/C3d/Include/op_curve_parameter.h index 5195156..f71be45 100644 --- a/C3d/Include/op_curve_parameter.h +++ b/C3d/Include/op_curve_parameter.h @@ -119,21 +119,21 @@ public: , bluntAngle ( false ) , fromBeg ( true ) , useSurfaceNormal( false ) - , surface ( c3d_null ) + , surface ( nullptr ) , snMaker ( nm ) {} public: /// \ru Установка режима по поверхности, переносится ли эквидистантная точка согласованно с нормалью к поверхности. \en Setting the mode whether offset point is moved according to surface normal or not. - void SetBySurfaceNormal( bool set, c3d::ConstSurfaceSPtr * s = c3d_null ) + void SetBySurfaceNormal( bool set, c3d::ConstSurfaceSPtr * s = nullptr ) { if ( set ) { useSurfaceNormal = set; - if ( s != c3d_null ) + if ( s != nullptr ) surface = *s; } else { useSurfaceNormal = false; - surface = c3d_null; + surface = nullptr; } } /// \ru Получить поверхность. \en Get surface. diff --git a/C3d/Include/op_duplication_parameter.h b/C3d/Include/op_duplication_parameter.h index 4604831..2930a09 100644 --- a/C3d/Include/op_duplication_parameter.h +++ b/C3d/Include/op_duplication_parameter.h @@ -110,21 +110,21 @@ public: /** \brief \ru Преобразовать параметры согласно матрице. \en Transform parameters according to the matrix. \~ */ - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ) = 0; + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ) = 0; /** \brief \ru Сдвинуть параметры вдоль вектора. \en Move parameters along a vector. \~ \details \ru Сдвинуть параметры вдоль вектора. \en Move parameters along a vector. \n \~ */ - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ) = 0; + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ) = 0; /** \brief \ru Повернуть параметры вокруг оси на заданный угол. \en Rotate parameters at a given angle around an axis. \~ \details \ru Повернуть параметры вокруг оси на заданный угол. \en Rotate parameters at a given angle around an axis. \n \~ */ - virtual void Rotate ( const MbAxis3D &, double ang, MbRegTransform * = c3d_null ) = 0; + virtual void Rotate ( const MbAxis3D &, double ang, MbRegTransform * = nullptr ) = 0; /** \brief \ru Выдать свойства объекта. \en Get properties of the object. \~ @@ -152,7 +152,7 @@ public: \details \ru Построить копию объекта. \n \en Create a copy of the object. \n \~ */ - virtual DuplicationValues & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; + virtual DuplicationValues & Duplicate( MbRegDuplicate * = nullptr ) const = 0; /** \brief \ru Сгенерировать матрицы трансформаций. \en Generate matrices of transformations. \~ @@ -236,7 +236,7 @@ public: */ DuplicationMeshValues( bool isPolar, const MbVector3D & dir1, const double step1, const uint num1, const MbVector3D & dir2, const double step2, const uint num2, - const MbCartPoint3D * center = c3d_null, bool isAlongAxis = false ); + const MbCartPoint3D * center = nullptr, bool isAlongAxis = false ); /// \ru Деструктор. \en Destructor. virtual ~DuplicationMeshValues(); @@ -248,11 +248,11 @@ public: /// \ru Тип параметров. \en Type of parameters. virtual MbeDuplicatesType Type() const; /// \ru Преобразовать сетку согласно матрице. \en Transform grid according to the matrix. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); /// \ru Сдвинуть сетку вдоль вектора. \en Move grid along a vector. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); /// \ru Повернуть сетку вокруг оси на заданный угол. \en Rotate grid at a given angle around an axis. - virtual void Rotate ( const MbAxis3D &, double ang, MbRegTransform * = c3d_null ); + virtual void Rotate ( const MbAxis3D &, double ang, MbRegTransform * = nullptr ); /// \ru Выдать свойства объекта \en Get properties of the object virtual void GetProperties( MbProperties & ); @@ -263,7 +263,7 @@ public: virtual bool IsSame( const DuplicationValues &, double accuracy ) const; /// \ru Построить копию объекта. \en Create a copy of the object. - virtual DuplicationValues & Duplicate( MbRegDuplicate * = c3d_null ) const; + virtual DuplicationValues & Duplicate( MbRegDuplicate * = nullptr ) const; /// \ru Сгенерировать матрицы трансформации. \en Generate matrix of transformation by. virtual void GenerateTransformMatrices( std::vector & ) const; @@ -385,11 +385,11 @@ public: /// \ru Тип параметров. \en Type of parameters. virtual MbeDuplicatesType Type() const; /// \ru Преобразовать объект согласно матрице. \en Transform an object according to the matrix. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); /// \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); /// \ru Повернуть объект вокруг оси на заданный угол. \en Rotate an object at a given angle around an axis. - virtual void Rotate ( const MbAxis3D &, double ang, MbRegTransform * = c3d_null ); + virtual void Rotate ( const MbAxis3D &, double ang, MbRegTransform * = nullptr ); /// \ru Выдать свойства объекта \en Get properties of the object virtual void GetProperties( MbProperties & ); @@ -400,7 +400,7 @@ public: virtual bool IsSame( const DuplicationValues &, double accuracy ) const; /// \ru Построить копию объекта. \en Create a copy of the object. - virtual DuplicationValues & Duplicate( MbRegDuplicate * = c3d_null ) const; + virtual DuplicationValues & Duplicate( MbRegDuplicate * = nullptr ) const; /// \ru Сгенерировать матрицы трансформации. \en Generate matrix of transformation. virtual void GenerateTransformMatrices( std::vector & ) const; diff --git a/C3d/Include/op_shell_parameter.h b/C3d/Include/op_shell_parameter.h index b1955b5..b464e63 100644 --- a/C3d/Include/op_shell_parameter.h +++ b/C3d/Include/op_shell_parameter.h @@ -137,7 +137,7 @@ public: } /// \ru Конструктор копирования. \en Copy-constructor. - SmoothValues( const SmoothValues & other, MbRegDuplicate * iReg = c3d_null ); + SmoothValues( const SmoothValues & other, MbRegDuplicate * iReg = nullptr ); /// \ru Деструктор. \en Destructor. virtual ~SmoothValues(){} @@ -145,11 +145,11 @@ public: void Init( const SmoothValues & other ); public: /// \ru Преобразовать объект согласно матрице. \en Transform an object according to the matrix. - virtual void Transform( const MbMatrix3D &, MbRegTransform * ireg = c3d_null ); + virtual void Transform( const MbMatrix3D &, MbRegTransform * ireg = nullptr ); /// \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. - virtual void Move ( const MbVector3D &, MbRegTransform * /*ireg*/ = c3d_null ){} + virtual void Move ( const MbVector3D &, MbRegTransform * /*ireg*/ = nullptr ){} /// \ru Повернуть объект вокруг оси на заданный угол. \en Rotate an object at a given angle around an axis. - virtual void Rotate ( const MbAxis3D &, double ang, MbRegTransform * ireg = c3d_null ); + virtual void Rotate ( const MbAxis3D &, double ang, MbRegTransform * ireg = nullptr ); /// \ru Установить плоскость, параллельно которой будет выполнена остановка скругления в начале цепочки. \en Set the plane by which parallel will be carry out stop of the fillet at the begin. bool SetStopObjectAtBeg( const MbSurface * object, bool byObject = true ); @@ -201,7 +201,7 @@ public: {} /// \ru Конструктор копирования. \en Copy-constructor. - FullFilletValues( const FullFilletValues & other, MbRegDuplicate * iReg = c3d_null ); + FullFilletValues( const FullFilletValues & other, MbRegDuplicate * iReg = nullptr ); /// \ru Деструктор. \en Destructor. ~FullFilletValues(){} @@ -209,11 +209,11 @@ public: /// \ru Функция инициализации. \en Initialization function. void Init( const FullFilletValues & other ); /// \ru Преобразовать объект согласно матрице. \en Transform an object according to the matrix. - void Transform( const MbMatrix3D &, MbRegTransform * ireg = c3d_null ); + void Transform( const MbMatrix3D &, MbRegTransform * ireg = nullptr ); /// \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. - void Move ( const MbVector3D &, MbRegTransform * /*ireg*/ = c3d_null ){} + void Move ( const MbVector3D &, MbRegTransform * /*ireg*/ = nullptr ){} /// \ru Повернуть объект вокруг оси на заданный угол. \en Rotate an object at a given angle around an axis. - void Rotate ( const MbAxis3D &, double ang, MbRegTransform * ireg = c3d_null ); + void Rotate ( const MbAxis3D &, double ang, MbRegTransform * ireg = nullptr ); /// \ru Оператор присваивания. \en Assignment operator. FullFilletValues & operator = ( const FullFilletValues & other ) { @@ -340,7 +340,7 @@ public: double placeAngle; ///< \ru Угол между осью и нормалью к поверхности (0 <= placeAngle <= M_PI_2). \en Angle between axis and normal to the surface (0 <= placeAngle <= M_PI_2). double azimuthAngle; ///< \ru Угол поворота оси вокруг нормали поверхности (-M_PI2 <= azimuthAngle <= M_PI2). \en Angle of rotation around the surface normal (-M_PI2 <= azimuthAngle <= M_PI2). protected: - MbSurface * surface; ///< \ru Обрабатываемая поверхность (если c3d_null, то считается плоской). \en Processing surface (if c3d_null, then is considered planar). + MbSurface * surface; ///< \ru Обрабатываемая поверхность (если nullptr, то считается плоской). \en Processing surface (if nullptr, then is considered planar). bool doPhantom; ///< \ru Создавать фантом результата операции. \en Create the phantom of the operation. protected: @@ -364,13 +364,13 @@ public: /// \ru Тип выемки. \en Type of notch. virtual MbeHoleType Type() const = 0; /// \ru Построить копию объекта. \en Create a copy of the object. - virtual HoleValues & Duplicate( MbRegDuplicate * ireg = c3d_null ) const = 0; + virtual HoleValues & Duplicate( MbRegDuplicate * ireg = nullptr ) const = 0; /// \ru Преобразовать объект согласно матрице. \en Transform an object according to the matrix. - virtual void Transform( const MbMatrix3D &, MbRegTransform * ireg = c3d_null ) = 0; + virtual void Transform( const MbMatrix3D &, MbRegTransform * ireg = nullptr ) = 0; /// \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. - virtual void Move ( const MbVector3D &, MbRegTransform * ireg = c3d_null ); + virtual void Move ( const MbVector3D &, MbRegTransform * ireg = nullptr ); /// \ru Повернуть объект вокруг оси на заданный угол. \en Rotate an object at a given angle around an axis. - virtual void Rotate ( const MbAxis3D &, double ang, MbRegTransform * ireg = c3d_null ); + virtual void Rotate ( const MbAxis3D &, double ang, MbRegTransform * ireg = nullptr ); /// \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual bool IsSame( const HoleValues &, double accuracy ) const; @@ -497,8 +497,8 @@ public: public: virtual MbeHoleType Type() const; // \ru Тип выемки. \en Type of notch. - virtual HoleValues & Duplicate( MbRegDuplicate * ireg = c3d_null ) const; // \ru Построить копию. \en Create a copy. - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * ireg = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual HoleValues & Duplicate( MbRegDuplicate * ireg = nullptr ) const; // \ru Построить копию. \en Create a copy. + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * ireg = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. virtual bool IsSame( const HoleValues &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual void operator = ( const HoleValues & other ); // \ru Оператор присваивания. \en Assignment operator. private: @@ -564,8 +564,8 @@ public: public: virtual MbeHoleType Type() const; // \ru Тип выемки. \en Type of notch. - virtual HoleValues & Duplicate( MbRegDuplicate * ireg = c3d_null ) const; // \ru Построить копию. \en Create a copy. - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * ireg = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual HoleValues & Duplicate( MbRegDuplicate * ireg = nullptr ) const; // \ru Построить копию. \en Create a copy. + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * ireg = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. virtual bool IsSame( const HoleValues &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual void operator = ( const HoleValues & other ); // \ru Оператор присваивания. \en Assignment operator. private: @@ -675,8 +675,8 @@ public: public: virtual MbeHoleType Type() const; // \ru Тип выемки. \en Type of notch. - virtual HoleValues & Duplicate( MbRegDuplicate * ireg = c3d_null ) const; // \ru Построить копию. \en Create a copy. - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * ireg = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual HoleValues & Duplicate( MbRegDuplicate * ireg = nullptr ) const; // \ru Построить копию. \en Create a copy. + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * ireg = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. virtual bool IsSame( const HoleValues &, double accuracy ) const; // \ru Являются ли объекты равными? \en Determine whether an object is equal? virtual void operator = ( const HoleValues & other ); // \ru Оператор присваивания. \en Assignment operator. private: @@ -1454,7 +1454,7 @@ private: bool vclosed; ///< \ru Признак замкнутости по V. \en Attribute of closedness along V. Array2 points; ///< \ru Множество точек. \en Set of points. double weight; ///< \ru Вес точек в случае одинаковости весов. \en Points weight in the case of equal weights. - Array2 * weights; ///< \ru Веса точек (может быть c3d_null). \en Weights of points (can be c3d_null). + Array2 * weights; ///< \ru Веса точек (может быть nullptr). \en Weights of points (can be nullptr). bool throughPoints; ///< \ru Строить поверхность, проходящую через точки. \en Build surface passing through points. bool pointsCloud; ///< \ru Облако точек (массив не упорядочен). \en Point cloud (disordered array). MbPlane * cloudPlane; ///< \ru Опорная плоскость облака точек. \en Support plane of point cloud. @@ -1627,11 +1627,11 @@ public: /// \ru Получить массив точек. \en Get array of points. bool GetPoints ( Array2 & pnts ) const { return pnts.Init( points ); } /// \ru Если ли веса? \en Is there weights? - bool IsWeighted() const { return (weights != c3d_null); } + bool IsWeighted() const { return (weights != nullptr); } /// \ru Получить массив весов. \en Get array of weights. bool GetWeights( Array2 & wts ) const; /// \ru Получить плоскость проецирования. \en Get the plane of projection. - const MbPlane * GetCloudPlane() const { return (pointsCloud ? cloudPlane : c3d_null);} + const MbPlane * GetCloudPlane() const { return (pointsCloud ? cloudPlane : nullptr);} /** \brief \ru Минимально возможный порядок сплайнов в случае облака точек. \en The smallest possible order of splines in the case of point cloud. \~ @@ -1669,7 +1669,7 @@ public: // --- inline bool NurbsSurfaceValues::GetWeights( Array2 & wts ) const { - if ( weights != c3d_null ) { + if ( weights != nullptr ) { if ( wts.Init( *weights ) ) return true; } @@ -1743,7 +1743,7 @@ inline bool NurbsSurfaceValues::SetUVPoint( size_t ui, size_t vi, const MbCartPo // --- inline bool NurbsSurfaceValues::GetUVWeight( size_t ui, size_t vi, double & wt ) const { - if ( weights != c3d_null && ui < GetUCount() && vi < GetVCount() ) { + if ( weights != nullptr && ui < GetUCount() && vi < GetVCount() ) { wt = (*weights)( vi, ui ); return (wt != UNDEFINED_DBL); //-V550 } @@ -1757,7 +1757,7 @@ inline bool NurbsSurfaceValues::GetUVWeight( size_t ui, size_t vi, double & wt ) // --- inline bool NurbsSurfaceValues::GetCommonWeight( double & wt ) const { - if ( weights == c3d_null && weight != UNDEFINED_DBL ) { //-V550 + if ( weights == nullptr && weight != UNDEFINED_DBL ) { //-V550 wt = weight; return true; } @@ -1776,7 +1776,7 @@ inline void NurbsSurfaceValues::SetThroughPoints( bool tp ) DeleteWeights(); weight = 1.0; } - if ( weights == c3d_null && weight == UNDEFINED_DBL ) //-V550 + if ( weights == nullptr && weight == UNDEFINED_DBL ) //-V550 weight = 1.0; } @@ -1861,15 +1861,15 @@ public: const RPArray & curvesV, bool vClosed, bool checkSelfInt, bool tess = false, - const RPArray * chainsU = c3d_null, - const RPArray * chainsV = c3d_null, + const RPArray * chainsU = nullptr, + const RPArray * chainsV = nullptr, MbeMatingType type0 = trt_Position, MbeMatingType type1 = trt_Position, MbeMatingType type2 = trt_Position, MbeMatingType type3 = trt_Position, - const c3d::ConstSurfacesVector * surf0 = c3d_null, // \ru Сопрягаемые поверхности через curvesU[0] \en Mating surfaces through curvesU[0] - const c3d::ConstSurfacesVector * surf1 = c3d_null, // \ru Сопрягаемые поверхности через curvesV[0] \en Mating surfaces through curvesV[0] - const c3d::ConstSurfacesVector * surf2 = c3d_null, // \ru Сопрягаемые поверхности через curvesU[maxU] \en Mating surfaces through curvesU[maxU] - const c3d::ConstSurfacesVector * surf3 = c3d_null, // \ru Сопрягаемые поверхности через curvesV[maxV] \en Mating surfaces through curvesV[maxV] - const MbPoint3D * pnt = c3d_null, + const c3d::ConstSurfacesVector * surf0 = nullptr, // \ru Сопрягаемые поверхности через curvesU[0] \en Mating surfaces through curvesU[0] + const c3d::ConstSurfacesVector * surf1 = nullptr, // \ru Сопрягаемые поверхности через curvesV[0] \en Mating surfaces through curvesV[0] + const c3d::ConstSurfacesVector * surf2 = nullptr, // \ru Сопрягаемые поверхности через curvesU[maxU] \en Mating surfaces through curvesU[maxU] + const c3d::ConstSurfacesVector * surf3 = nullptr, // \ru Сопрягаемые поверхности через curvesV[maxV] \en Mating surfaces through curvesV[maxV] + const MbPoint3D * pnt = nullptr, bool modify = true, bool direct0 = true, bool direct1 = true, bool direct2 = true, bool direct3 = true ); @@ -2014,9 +2014,9 @@ public: /// \ru Максимальный индекс в массиве кривых по U. \en The maximum index in the array of curves along U. ptrdiff_t GetCurvesUMaxIndex() const { return curvesU.MaxIndex(); } /// \ru Получить кривую по индексу. \en Get the curve by the index. - const MbCurve3D * GetCurveU( size_t k ) const { return ((k < curvesU.Count()) ? curvesU[k] : c3d_null); } + const MbCurve3D * GetCurveU( size_t k ) const { return ((k < curvesU.Count()) ? curvesU[k] : nullptr); } /// \ru Получить кривую по индексу. \en Get the curve by the index. - MbCurve3D * SetCurveU( size_t k ) { return ((k < curvesU.Count()) ? curvesU[k] : c3d_null); } + MbCurve3D * SetCurveU( size_t k ) { return ((k < curvesU.Count()) ? curvesU[k] : nullptr); } /// \ru Получить кривые по U. \en Get curves along U. void GetCurvesU( RPArray & curves ) const { curves.AddArray(curvesU); } /// \ru Установить кривые по U. \en Set curves along U. @@ -2031,9 +2031,9 @@ public: /// \ru Максимальный индекс в массиве кривых по V. \en The maximum index in the array of curves along V. ptrdiff_t GetCurvesVMaxIndex() const { return curvesV.MaxIndex(); } /// \ru Получить кривую по индексу. \en Get the curve by the index. - const MbCurve3D * GetCurveV( size_t k ) const { return ((k < curvesV.Count()) ? curvesV[k] : c3d_null); } + const MbCurve3D * GetCurveV( size_t k ) const { return ((k < curvesV.Count()) ? curvesV[k] : nullptr); } /// \ru Получить кривую по индексу. \en Get the curve by the index. - MbCurve3D * SetCurveV( size_t k ) const { return ((k < curvesV.Count()) ? curvesV[k] : c3d_null); } + MbCurve3D * SetCurveV( size_t k ) const { return ((k < curvesV.Count()) ? curvesV[k] : nullptr); } /// \ru Получить кривые по V. \en Get curves along V. void GetCurvesV( RPArray & curves ) const { curves.AddArray(curvesV); } /// \ru Установить кривые по V. \en Set curves along V. @@ -2048,9 +2048,9 @@ public: /// \ru Максимальный индекс в массиве цепочек по U. \en The maximum index in the array of chains along U. ptrdiff_t GetChainsUMaxIndex() const { return chainsU.MaxIndex(); } /// \ru Получить цепочку по индексу. \en Get the chain by the index. - const MbPolyline3D * GetChainU( size_t k ) const { return ( ( k < chainsU.Count() ) ? chainsU[k] : c3d_null ); } + const MbPolyline3D * GetChainU( size_t k ) const { return ( ( k < chainsU.Count() ) ? chainsU[k] : nullptr ); } /// \ru Получить цепочку по индексу. \en Get the chain by the index. - MbPolyline3D * SetChainU( size_t k ) { return ( ( k < chainsU.Count() ) ? chainsU[k] : c3d_null ); } + MbPolyline3D * SetChainU( size_t k ) { return ( ( k < chainsU.Count() ) ? chainsU[k] : nullptr ); } /// \ru Получить цепочки по U. \en Get chains along U. void GetChainsU( RPArray & chains ) const { chains.AddArray( chainsU ); } /// \ru Установить цепочки по U. \en Set chains along U. @@ -2065,9 +2065,9 @@ public: /// \ru Максимальный индекс в массиве цепочек по V. \en The maximum index in the array of chains along V. ptrdiff_t GetChainsVMaxIndex() const { return chainsV.MaxIndex(); } /// \ru Получить цепочку по индексу. \en Get the chain by the index. - const MbPolyline3D * GetChainV( size_t k ) const { return ( ( k < chainsV.Count() ) ? chainsV[k] : c3d_null ); } + const MbPolyline3D * GetChainV( size_t k ) const { return ( ( k < chainsV.Count() ) ? chainsV[k] : nullptr ); } /// \ru Получить цепочку по индексу. \en Get the chain by the index. - MbPolyline3D * SetChainV( size_t k ) { return ( ( k < chainsV.Count() ) ? chainsV[k] : c3d_null ); } + MbPolyline3D * SetChainV( size_t k ) { return ( ( k < chainsV.Count() ) ? chainsV[k] : nullptr ); } /// \ru Получить цепочки по V. \en Get chains along V. void GetChainsV( RPArray & chains ) const { chains.AddArray( chainsV ); } /// \ru Установить цепочки по V. \en Set chains along V. @@ -2439,11 +2439,11 @@ public: void InitByShell ( ExtensionType t, LateralKind k, const MbFace * f, const MbSolid * s ); /// \ru Преобразовать объект согласно матрице. \en Transform an object according to the matrix. - void Transform( const MbMatrix3D & matr, MbRegTransform * ireg = c3d_null ); + void Transform( const MbMatrix3D & matr, MbRegTransform * ireg = nullptr ); /// \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. - void Move ( const MbVector3D & to, MbRegTransform * ireg = c3d_null ); + void Move ( const MbVector3D & to, MbRegTransform * ireg = nullptr ); /// \ru Повернуть объект вокруг оси на заданный угол. \en Rotate an object at a given angle around an axis. - void Rotate ( const MbAxis3D & axis, double ang, MbRegTransform * ireg = c3d_null ); + void Rotate ( const MbAxis3D & axis, double ang, MbRegTransform * ireg = nullptr ); /// \ru Получить оболочку. \en Get the shell. const MbFaceShell * GetShell() const { return shell; } @@ -2512,10 +2512,10 @@ public: , checkSelfInt ( false ) , edgeConnType1 ( false ) , edgeConnType2 ( false ) - , boundDirection11 ( c3d_null ) - , boundDirection12 ( c3d_null ) - , boundDirection21 ( c3d_null ) - , boundDirection22 ( c3d_null ) + , boundDirection11 ( nullptr ) + , boundDirection12 ( nullptr ) + , boundDirection21 ( nullptr ) + , boundDirection22 ( nullptr ) {} /// \ru Конструктор по параметрам. \en Constructor by parameters. JoinSurfaceValues( JoinConnType t1, JoinConnType t2, double tens1, double tens2, bool selfInt = false ) @@ -2528,10 +2528,10 @@ public: , checkSelfInt ( selfInt ) , edgeConnType1 ( false ) , edgeConnType2 ( false ) - , boundDirection11 ( c3d_null ) - , boundDirection12 ( c3d_null ) - , boundDirection21 ( c3d_null ) - , boundDirection22 ( c3d_null ) + , boundDirection11 ( nullptr ) + , boundDirection12 ( nullptr ) + , boundDirection21 ( nullptr ) + , boundDirection22 ( nullptr ) {} /// \ru Конструктор копирования. \en Copy-constructor. JoinSurfaceValues( const JoinSurfaceValues & other ); @@ -2651,10 +2651,10 @@ public: } } if ( isSame ) { - bool isBoundDir11 = ((other.boundDirection11 != c3d_null) && (boundDirection11 != c3d_null)); - bool isBoundDir12 = ((other.boundDirection12 != c3d_null) && (boundDirection12 != c3d_null)); - bool isBoundDir21 = ((other.boundDirection21 != c3d_null) && (boundDirection21 != c3d_null)); - bool isBoundDir22 = ((other.boundDirection22 != c3d_null) && (boundDirection22 != c3d_null)); + bool isBoundDir11 = ((other.boundDirection11 != nullptr) && (boundDirection11 != nullptr)); + bool isBoundDir12 = ((other.boundDirection12 != nullptr) && (boundDirection12 != nullptr)); + bool isBoundDir21 = ((other.boundDirection21 != nullptr) && (boundDirection21 != nullptr)); + bool isBoundDir22 = ((other.boundDirection22 != nullptr) && (boundDirection22 != nullptr)); if ( isSame && isBoundDir11 ) isSame = c3d::EqualVectors( *other.boundDirection11, *boundDirection11, accuracy ); @@ -3419,11 +3419,11 @@ public: } public: /// \ru Это резка плоским контуром? \en Is cutting by planar contour? - bool IsCuttingByPlanarContour() const { return (cutterData.GetSketchCurvesCount() > 0 && cutterData.GetSketchCurve(0) != c3d_null); } + bool IsCuttingByPlanarContour() const { return (cutterData.GetSketchCurvesCount() > 0 && cutterData.GetSketchCurve(0) != nullptr); } /// \ru Это резка поверхностью? \en Is cutting by surface? - bool IsCuttingBySurface() const { return (cutterData.GetSurfacesCount() > 0 && cutterData.GetSurface(0) != c3d_null); } + bool IsCuttingBySurface() const { return (cutterData.GetSurfacesCount() > 0 && cutterData.GetSurface(0) != nullptr); } /// \ru Это резка оболочкой? \en Is cutting by shell? - bool IsCuttingBySolid() const { return (cutterData.GetCreatorsCount() > 0 && cutterData.GetCreator(0) != c3d_null) || (cutterData.GetSolidShell() != c3d_null); } + bool IsCuttingBySolid() const { return (cutterData.GetCreatorsCount() > 0 && cutterData.GetCreator(0) != nullptr) || (cutterData.GetSolidShell() != nullptr); } /// \ru Получить данные секущего объекта. \en Get cutter object(s) data. const MbSplitData & GetCutterData() const { return cutterData; } diff --git a/C3d/Include/op_swept_parameter.h b/C3d/Include/op_swept_parameter.h index bdfc61c..68dca5b 100644 --- a/C3d/Include/op_swept_parameter.h +++ b/C3d/Include/op_swept_parameter.h @@ -92,7 +92,7 @@ public: /// \ru Конструктор по умолчанию. \en Default constructor. MbSweptData(); /// \ru Конструктор копирования. \en Copy-constructor. - MbSweptData( const MbSweptData &, MbRegDuplicate * ireg = c3d_null ); + MbSweptData( const MbSweptData &, MbRegDuplicate * ireg = nullptr ); public: @@ -174,7 +174,7 @@ public: \param[in] _newMainName - \ru Новое главное имя для топологических элементов тела. \en New main name for names of solid's topological elements. \~ */ - MbSweptData( MbSolid & _solid, const MbSNameMaker * newNameMaker = c3d_null ); + MbSweptData( MbSolid & _solid, const MbSNameMaker * newNameMaker = nullptr ); /** \brief \ru Конструктор. \en Constructor. \~ @@ -237,11 +237,11 @@ public: SPtr GetCurve3D( size_t i ) const; /// \ru Есть данные о двумерных кривых на поверхности? \en Is there data of two-dimensional curves on the surface? - bool IsSurfaceCurvesData() const { return ((surface != c3d_null) && !contours.empty()); } + bool IsSurfaceCurvesData() const { return ((surface != nullptr) && !contours.empty()); } /// \ru Есть данные о пространственных кривых? \en Is there data of spatial curves? bool IsSpaceCurvesData() const { return !contours3D.empty(); } /// \ru Есть данные о теле? \en Is there data about the solid? - bool IsSolidData() const { return (solid != c3d_null); } + bool IsSolidData() const { return (solid != nullptr); } /// \ru Выдать поверхность. \en Get the surface. const MbSurface * GetSurface() const { return surface; } @@ -277,7 +277,7 @@ public: \param[in] iReg - \ru Регистратор. \en Registrator. \~ */ - void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = c3d_null ); + void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = nullptr ); /** \brief \ru Сдвинуть объект. \en Move the object. \~ \details \ru Сдвинуть геометрический объект вдоль вектора с использованием регистратора. @@ -287,7 +287,7 @@ public: \param[in] iReg - \ru Регистратор. \en Registrator. \~ */ - void Move ( const MbVector3D & to, MbRegTransform * iReg = c3d_null ); + void Move ( const MbVector3D & to, MbRegTransform * iReg = nullptr ); /** \brief \ru Повернуть объект. \en Rotate the object. \~ \details \ru Повернуть объект вокруг оси на заданный угол с использованием регистратора. @@ -299,7 +299,7 @@ public: \param[in] iReg - \ru Регистратор. \en Registrator. \~ */ - void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = c3d_null ); + void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = nullptr ); /** \brief \ru Определить, являются ли объекты равными. \en Determine whether the objects are equal. \~ \details \ru Определить, являются ли объекты равными с заданной точностью. @@ -450,7 +450,7 @@ public: , scalarValue( 0.0 ) , distance ( 0.0 ) , rake ( 0.0 ) - , surface ( c3d_null ) + , surface ( nullptr ) , sameSense ( orient_BOTH ) {} @@ -466,7 +466,7 @@ public: , scalarValue( sVal ) , distance ( 0.0 ) , rake ( 0.0 ) - , surface ( c3d_null ) + , surface ( nullptr ) , sameSense ( orient_BOTH ) {} @@ -539,8 +539,8 @@ public: (::fabs(other.distance - distance) < accuracy) && (::fabs(other.rake - rake) < accuracy) ) { - bool isSurf1 = (surface != c3d_null); - bool isSurf2 = (other.surface != c3d_null); + bool isSurf1 = (surface != nullptr); + bool isSurf2 = (other.surface != nullptr); if ( isSurf1 == isSurf2 ) { if ( isSurf1 && isSurf2 ) { @@ -751,7 +751,7 @@ public: virtual bool IsSame( const SweptValues & other, double accuracy ) const { const SweptValuesAndSides * obj = dynamic_cast( &other ); - if ( obj != c3d_null ) { + if ( obj != nullptr ) { if ( side1.IsSame( obj->side1, accuracy ) && side2.IsSame( obj->side2, accuracy ) ) { if ( obj->SweptValues::IsSame( *this, accuracy ) ) { return true; @@ -778,7 +778,7 @@ public: \param[in] iReg - \ru Регистратор. \en Registrator. \~ */ - void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = c3d_null ); + void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = nullptr ); /** \brief \ru Сдвинуть вдоль вектора. \en Move along a vector. \~ \details \ru Сдвинуть вдоль вектора поверхности в прямом и обратном направлении. @@ -788,7 +788,7 @@ public: \param[in] iReg - \ru Регистратор. \en Registrator. \~ */ - void Move ( const MbVector3D & to, MbRegTransform * iReg = c3d_null ); + void Move ( const MbVector3D & to, MbRegTransform * iReg = nullptr ); /** \brief \ru Повернуть вокруг оси. \en Rotate around an axis. \~ \details \ru Повернуть вокруг оси поверхности в прямом и обратном направлении. @@ -800,7 +800,7 @@ public: \param[in] iReg - \ru Регистратор. \en Registrator. \~ */ - void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = c3d_null ); + void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = nullptr ); /** \brief \ru Сделать копии поверхностей. \en Make copies of surfaces. \~ @@ -811,7 +811,7 @@ public: \return \ru true, если хотя бы одна поверхность имелась и сдублирована. \en True if at least one surface is had and copied. \~ */ - bool DuplicateSurfaces( MbRegDuplicate * ireg = c3d_null ); + bool DuplicateSurfaces( MbRegDuplicate * ireg = nullptr ); public: /// \ru Получить поверхность в положительном направлении. \en Get the surface along the positive direction. @@ -881,7 +881,7 @@ public: virtual bool IsSame( const SweptValues & other, double accuracy ) const { const ExtrusionValues * obj = dynamic_cast( &other ); - if ( obj != c3d_null ) { + if ( obj != nullptr ) { if ( obj->SweptValuesAndSides::IsSame( *this, accuracy ) ) return true; } @@ -970,7 +970,7 @@ public: virtual bool IsSame( const SweptValues & other, double accuracy ) const { const RevolutionValues * obj = dynamic_cast( &other ); - if ( obj != c3d_null ) { + if ( obj != nullptr ) { if ( obj->shape == shape ) { if ( obj->SweptValuesAndSides::IsSame( *this, accuracy ) ) return true; @@ -1025,7 +1025,7 @@ protected: */ int mode; // "mode" or "parallel" on documentation pictures. public: - // \ru Данные о функциях изменения образующих кривых вдоль направляющей кривой (могут быть c3d_null). \en Data about changes of generating curves along the guide curve (can be c3d_null). + // \ru Данные о функциях изменения образующих кривых вдоль направляющей кривой (могут быть nullptr). \en Data about changes of generating curves along the guide curve (can be nullptr). double range; ///< \ru Эквидистантное смещение точек образующей кривой в конце траектории. \en The offset range of generating curve on the end of spine curve. SPtr scaling; ///< \ru Функция масштабирования образующей кривой. \en The function of curve scale. SPtr winding; ///< \ru Функция вращения образующей кривой. \en The function of curve rotation. @@ -1044,9 +1044,9 @@ public: : SweptValues( ) , mode ( eom_KeepingAngle ) , range ( 0.0 ) - , scaling ( c3d_null ) - , winding ( c3d_null ) - , surface ( c3d_null ) + , scaling ( nullptr ) + , winding ( nullptr ) + , surface ( nullptr ) {} /// \ru Конструктор копирования. \en Copy-constructor. EvolutionValues( const EvolutionValues & other ); @@ -1204,7 +1204,7 @@ public: virtual bool IsSame( const SweptValues & other, double accuracy ) const { const LoftedValues * obj = dynamic_cast( &other ); - if ( obj != c3d_null ) { + if ( obj != nullptr ) { if ( obj->closed == closed ) { if ( c3d::EqualVectors(vector1, obj->vector1, accuracy) && c3d::EqualVectors(vector2, obj->vector2, accuracy) ) { if ( obj->setNormal1 == setNormal1 && obj->setNormal2 == setNormal2 ) { @@ -1295,7 +1295,7 @@ public: { const RibValues * obj = dynamic_cast( &other ); - if ( obj != c3d_null ) { + if ( obj != nullptr ) { if ( obj->side == side ) { if ( ::fabs(obj->angle1 - angle1) < accuracy && ::fabs(obj->angle2 - angle2) < accuracy ) return SweptValues::IsSame( *obj, accuracy ); @@ -1365,7 +1365,7 @@ public: { const SheetRibValues * obj = dynamic_cast( &other ); - if ( obj != c3d_null ) { + if ( obj != nullptr ) { if ( (::fabs(radRibConvex - obj->radRibConvex) < accuracy) && (::fabs(radSideConcave - obj->radSideConcave) < accuracy) ) return RibValues::IsSame( *obj, accuracy ); } @@ -1529,8 +1529,8 @@ private: std::vector faces; ///< \ru Опорные грани (могут отсутствовать). \en The reference faces (may be empty). std::vector faceSide; ///< \ru С каких сторон касаться поверхностей при form==cs_Linea (синхронно с faces). \en On which sides to touch surfaces when form==cs_Linea (synchronously with faces). std::vector curves; ///< \ru Направляющие кривые (могут отсутствовать). \en The guide curves (may be empty). - MbCurve3D * track; ///< \ru Кривая, через которую должно пройти сечение (может отсутствовать). \en The curve that the section should pass through (may be c3d_null). - MbFunction * angle; ///< \ru Функция угла наклона (может отсутствовать). \en The function of the angle of inclination (may be c3d_null). + MbCurve3D * track; ///< \ru Кривая, через которую должно пройти сечение (может отсутствовать). \en The curve that the section should pass through (may be nullptr). + MbFunction * angle; ///< \ru Функция угла наклона (может отсутствовать). \en The function of the angle of inclination (may be nullptr). ThreeStates state; ///< \ru Как использовать angle: угол к хорде (ts_neutral), отклонение от касательной поверхности (ts_positive), отклонение от нормали к поверхности (ts_negative). ///< \en How to use angle: angle to chord (ts_neutral), deviation from tangent surface (ts_positive), deviation from normal to surface (ts_negative). public: @@ -1542,8 +1542,8 @@ public: , faces () , faceSide() , curves () - , track ( c3d_null ) - , angle ( c3d_null ) + , track ( nullptr ) + , angle ( nullptr ) , state( ts_neutral ) {} @@ -1560,9 +1560,9 @@ public: \param[in] cs - \ru Направляющие кривые (могут отсутствовать). \en The guide curves (may be empty). \~ \param[in] trk - \ru Кривая, через которую должно пройти сечение (может отсутствовать). - \en The curve that the section should pass through (may be c3d_null). \~ - \param[in] ang - \ru Функция угла наклона (может быть c3d_null). - \en The function of the angle of inclination (may be c3d_null). \~ + \en The curve that the section should pass through (may be nullptr). \~ + \param[in] ang - \ru Функция угла наклона (может быть nullptr). + \en The function of the angle of inclination (may be nullptr). \~ \param[in] st - \ru Как использовать ang. \en How to use ang. \~ */ @@ -1590,7 +1590,7 @@ public: size_t GetEdgesCount() const { return edges.size(); } size_t GetEdgeSideCount() const { return edgeSide.size(); } /// \ru Выдать направляющее ребро. \en Get guide edge. - MbCurveEdge * SetEdge( size_t i ) { return ( i < edges.size() ) ? edges[i] : c3d_null; } + MbCurveEdge * SetEdge( size_t i ) { return ( i < edges.size() ) ? edges[i] : nullptr; } /// \ru Добавить в данные поверхность. \en Add surface to data. \~ void AddFace( MbFace & _face, bool side ); @@ -1603,7 +1603,7 @@ public: size_t GetFacesCount() const { return faces.size(); } size_t GetFaceSideCount() const { return faceSide.size(); } /// \ru Выдать направляющую грань. \en Get guide face. - MbFace * SetFace( size_t i ) { return ( i < faces.size() ) ? faces[i] : c3d_null; } + MbFace * SetFace( size_t i ) { return ( i < faces.size() ) ? faces[i] : nullptr; } /// \ru Добавить в данные кривую. \en Add curve to data. \~ void AddCurve( MbCurve3D & _curve ); @@ -1614,7 +1614,7 @@ public: /// \ru Выдать количество дополнительных направляющих кривых. \en Get additional guide curves count. size_t GetCurvesCount() const { return curves.size(); } /// \ru Выдать дополнительную направляющую кривую. \en Get additional guide curve. - MbCurve3D * SetCurve( size_t i ) { return ( i < curves.size() ) ? curves[i] : c3d_null; } + MbCurve3D * SetCurve( size_t i ) { return ( i < curves.size() ) ? curves[i] : nullptr; } /// \ru Добавить в данные кривую. \en Add curve to data. \~ void SetTrack( MbCurve3D & trk ); @@ -1632,11 +1632,11 @@ public: void SetState( ThreeStates st ) { state = st; } /// \ru Преобразовать объект. \en Transform the object. \~ - void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = c3d_null ); + void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = nullptr ); /// \ru Сдвинуть объект. \en Move the object. \~ - void Move ( const MbVector3D & to, MbRegTransform * iReg = c3d_null ); + void Move ( const MbVector3D & to, MbRegTransform * iReg = nullptr ); /// \ru Повернуть объект. \en Rotate the object. \~ - void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = c3d_null ); + void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = nullptr ); /// \ru Определить, являются ли объекты равными? \en Determine whether an object is equal? bool IsSame( const MbSectionRail & other, double accuracy ) const; /// \ru Определить, являются ли объекты подобными. \en Determine whether the objects are similar. \~ @@ -1668,7 +1668,7 @@ public: struct MATH_CLASS MbSectionRule { public: - MbFunction * discr; ///< \ru Функция управления сечением (дискриминант или радиус, может быть c3d_null). \en Section control function (discriminant or radius). + MbFunction * discr; ///< \ru Функция управления сечением (дискриминант или радиус, может быть nullptr). \en Section control function (discriminant or radius). MbCurve3D * track; ///< \ru Кривая, через которую должно пройти сечение. \en The curve that the section should pass through. MbSurface * touch; ///< \ru Поверхность, которой должно касаться сечение. \en The surface that the section should touch. MbFaceShell * shell; ///< \ru Оболочка, которой должно касаться сечение. \en The shell that the section should touch. @@ -1712,11 +1712,11 @@ public: void SetShell( MbFaceShell & s ); /// \ru Преобразовать объект. \en Transform the object. \~ - void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = c3d_null ); + void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = nullptr ); /// \ru Сдвинуть объект. \en Move the object. \~ - void Move ( const MbVector3D & to, MbRegTransform * iReg = c3d_null ); + void Move ( const MbVector3D & to, MbRegTransform * iReg = nullptr ); /// \ru Повернуть объект. \en Rotate the object. \~ - void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = c3d_null ); + void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = nullptr ); /// \ru Определить, являются ли объекты равными? \en Determine whether an object is equal? bool IsSame( const MbSectionRule & other, double accuracy ) const; /// \ru Определить, являются ли объекты подобными. \en Determine whether the objects are similar. \~ @@ -1785,9 +1785,9 @@ private: MbeSectionShape form; ///< \ru Форма сечения поверхности. \en The surface cross-section shape. MbSectionRail rail1; ///< \ru Данные начального края сечения. \en The data of the begining of section. MbSectionRail rail2; ///< \ru Данные конечного края сечения. \en The data of the end of section. - MbCurve3D * apexCurve; ///< \ru Кривая вершин (может отсутствовать). \en The apex curve (may be c3d_null). - MbSectionRule descript; ///< \ru Функция управления сечением поверхности (радиус или дискриминант, может быть c3d_null). \en The section control function (radius or discriminant). - MbPolyCurve * pattern; ///< \ru Образующая кривая при form==cs_Shape (для других форм c3d_null). \en Forming curve for form==cs_Shape (c3d_null on other case). + MbCurve3D * apexCurve; ///< \ru Кривая вершин (может отсутствовать). \en The apex curve (may be nullptr). + MbSectionRule descript; ///< \ru Функция управления сечением поверхности (радиус или дискриминант, может быть nullptr). \en The section control function (radius or discriminant). + MbPolyCurve * pattern; ///< \ru Образующая кривая при form==cs_Shape (для других форм nullptr). \en Forming curve for form==cs_Shape (nullptr on other case). double uMin; ///< \ru Минимальное значение первого параметра. \en Minimal value of the first parameter. double uMax; ///< \ru Максимальное значение первого параметра. \en Maximal value of the first parameter. double buildSag; ///< \ru Угловое отклонение при движении по кривым и поверхностям. \en Angular deviation while moving along curves and surfaces. @@ -1809,12 +1809,12 @@ public: \en The data of the begining of section. \~ \param[in] r2 - \ru Данные конечного края сечения. \en The data of the end of section. \~ - \param[in] ap - \ru Кривая вершин (может быть c3d_null). + \param[in] ap - \ru Кривая вершин (может быть nullptr). \en The apex curve (may be empty). \~ - \param[in] desc - \ru Функция управления сечением (может быть c3d_null). - \en Section control function (may be c3d_null). \~ - \param[in] patt - \ru Образующая кривая (может быть c3d_null). - \en Forming curve (may be c3d_null). \~ + \param[in] desc - \ru Функция управления сечением (может быть nullptr). + \en Section control function (may be nullptr). \~ + \param[in] patt - \ru Образующая кривая (может быть nullptr). + \en Forming curve (may be nullptr). \~ */ MbSectionData( MbCurve3D & sp, MbeSectionShape f, @@ -1834,7 +1834,7 @@ public: /// \ru Установить опорную кривую. \en Set reference curve. void SetSpine( MbCurve3D & s ); - //< \ru Установить вектор направления опорной кривой (если spine==c3d_null). \en Set the direction vector of the reference curve (if spine= = c3d_null). + //< \ru Установить вектор направления опорной кривой (если spine==nullptr). \en Set the direction vector of the reference curve (if spine= = nullptr). void SetSpine( const MbVector3D & a ); /// \ru Выдать опорную кривую. \en Get reference curve. const MbCurve3D * GetSpine() const { return spine; } @@ -1992,11 +1992,11 @@ public: void SetCheck( bool c ); /// \ru Преобразовать объект. \en Transform the object. \~ - void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = c3d_null ); + void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = nullptr ); /// \ru Сдвинуть объект. \en Move the object. \~ - void Move ( const MbVector3D & to, MbRegTransform * iReg = c3d_null ); + void Move ( const MbVector3D & to, MbRegTransform * iReg = nullptr ); /// \ru Повернуть объект. \en Rotate the object. \~ - void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = c3d_null ); + void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = nullptr ); /// \ru Определить, являются ли объекты равными? \en Determine whether an object is equal? bool IsSame( const MbSectionData & other, double acc ) const; /// \ru Определить, являются ли объекты подобными. \en Determine whether the objects are similar. \~ diff --git a/C3d/Include/pars_equation_tree.h b/C3d/Include/pars_equation_tree.h index 7287fdd..3698cc1 100644 --- a/C3d/Include/pars_equation_tree.h +++ b/C3d/Include/pars_equation_tree.h @@ -75,7 +75,7 @@ struct CharacterPointInfo equPoint_DerBreak1 ///< \ru Разрыв производной. \en Derivative discontinuity. }; - const BTreeNode * m_tree; ///< \ru Узел дерева. Не равен c3d_null. \en Node of a tree. Not equal to c3d_null. + const BTreeNode * m_tree; ///< \ru Узел дерева. Не равен nullptr. \en Node of a tree. Not equal to nullptr. EquCharacterPointType m_type; ///< \ru Тип характерной точки. \en Type of a characteristic point. double m_ph; ///< \ru Значение параметра функции. \en The value of the function parameter. double m_period; ///< \ru Период функции. \en A period of a function. @@ -461,10 +461,10 @@ public: \return \ru Переменную для фиксирования. \en Variable for fixation. \~ */ - virtual std_unique_ptr FixVars( const RPArray & unfixedVars, + virtual std::unique_ptr FixVars( const RPArray & unfixedVars, PArray & newFuncs, EquTreeResCode & code ) const = 0; /// \ru Дать эквивалентный узел. \en Get equivalent node. - virtual std_unique_ptr GetCalcEquivalent() const = 0; + virtual std::unique_ptr GetCalcEquivalent() const = 0; /** \brief \ru Дать строку. \en Get string. \~ @@ -653,8 +653,8 @@ IMPL_PERSISTENT_OPS( TreeIntervalNode ) // --- class MATH_CLASS IntervalConstNode : public TreeIntervalNode { - BTreeNode * m_firstValue; ///< \ru Первое значение (всегда не c3d_null). \en First value (always not c3d_null). - BTreeNode * m_secondValue; ///< \ru Второе значение (всегда не c3d_null). \en Second value (always not c3d_null). + BTreeNode * m_firstValue; ///< \ru Первое значение (всегда не nullptr). \en First value (always not nullptr). + BTreeNode * m_secondValue; ///< \ru Второе значение (всегда не nullptr). \en Second value (always not nullptr). public: @@ -752,7 +752,7 @@ IMPL_PERSISTENT_OPS( IntervalConstNode ) // --- class MATH_CLASS IntervalIdentNode : public TreeIntervalNode { - ItIntervalTreeVariable * m_ident; ///< \ru Всегда не c3d_null. \en Always not c3d_null. + ItIntervalTreeVariable * m_ident; ///< \ru Всегда не nullptr. \en Always not nullptr. public: /** \brief \ru Конструктор. @@ -867,18 +867,18 @@ public: \details \ru Получить вложенный узел по индексу.\n \en Get a child node by an index.\n \~ */ - virtual BTreeNode * GetSubNode( size_t /*i*/ ) { return c3d_null; } + virtual BTreeNode * GetSubNode( size_t /*i*/ ) { return nullptr; } virtual bool GetDefRange(DefRange &, ItTreeVariable &, bool /*stopOnBreak*/ ) const { return true; } virtual void GetUsedVariables( SSArray &, SSArray & )const{} - virtual std_unique_ptr FixVars( const RPArray & /*unfixedVars*/, + virtual std::unique_ptr FixVars( const RPArray & /*unfixedVars*/, PArray & /*newFuncs*/, EquTreeResCode & ) const - { return std_unique_ptr(Duplicate()); } + { return std::unique_ptr(Duplicate()); } - virtual std_unique_ptr GetCalcEquivalent() const - { return std_unique_ptr(Duplicate()); } + virtual std::unique_ptr GetCalcEquivalent() const + { return std::unique_ptr(Duplicate()); } virtual void GetString( c3d::string_t & str ) const; virtual size_t SizeOf() const; @@ -981,14 +981,14 @@ public : \{ */ /// \ru Дать вложенный узел по индексу. \en Get a child node by an index. - virtual BTreeNode * GetSubNode( size_t /*i*/ ) { return c3d_null; } + virtual BTreeNode * GetSubNode( size_t /*i*/ ) { return nullptr; } virtual bool GetDefRange( DefRange &, ItTreeVariable &, bool /*stopOnBreak*/ ) const{ return true; } - virtual std_unique_ptr FixVars( const RPArray & unfixed, + virtual std::unique_ptr FixVars( const RPArray & unfixed, PArray & newFuncs, EquTreeResCode & ) const; - virtual std_unique_ptr GetCalcEquivalent() const { return std_unique_ptr(Duplicate()); } + virtual std::unique_ptr GetCalcEquivalent() const { return std::unique_ptr(Duplicate()); } virtual void GetString( c3d::string_t & str ) const { str += id->GetName(); } virtual size_t SizeOf() const; @@ -1142,10 +1142,10 @@ public : /// \ru Дать вложенный узел по индексу. \en Get a child node by an index. virtual BTreeNode * GetSubNode( size_t i ); virtual bool GetDefRange( DefRange &, ItTreeVariable &, bool stopOnBreak ) const; - virtual std_unique_ptr FixVars( const RPArray & unfixed, + virtual std::unique_ptr FixVars( const RPArray & unfixed, PArray & newFuncs, EquTreeResCode & ) const; - virtual std_unique_ptr GetCalcEquivalent() const; + virtual std::unique_ptr GetCalcEquivalent() const; virtual void GetString( c3d::string_t & str ) const; virtual size_t SizeOf() const; @@ -1245,7 +1245,7 @@ private: BTreeNode * op2; ///< \ru Второй операнд. \en The second operand. static SArray varsDerives; ///< \ru Производные аргументов для вычисления производных показательно-степенной функции \en Derivatives of arguments for calculation of derivatives of exponential-power function - static std_unique_ptr deriveFunc; ///< \ru Функция для вычисления производной показательно-степенной функции \en Function for calculation of derivative of the exponential-power function + static std::unique_ptr deriveFunc; ///< \ru Функция для вычисления производной показательно-степенной функции \en Function for calculation of derivative of the exponential-power function public: /** \brief \ru Конструктор. @@ -1304,9 +1304,9 @@ public: virtual BTreeNode * GetSubNode( size_t i ); virtual bool GetDefRange( DefRange &, ItTreeVariable &, bool stopOnBreak ) const; - virtual std_unique_ptr FixVars( const RPArray & unfixed, + virtual std::unique_ptr FixVars( const RPArray & unfixed, PArray & newFuncs, EquTreeResCode & ) const; - virtual std_unique_ptr GetCalcEquivalent() const; + virtual std::unique_ptr GetCalcEquivalent() const; virtual void GetString( c3d::string_t & str ) const; virtual size_t SizeOf() const; @@ -1415,9 +1415,9 @@ public : virtual bool GetCharacterPoints( std::vector & ) const; virtual bool GetDefRange( DefRange & range, ItTreeVariable & var, bool stopOnBreak ) const { C3D_ASSERT( op ); return op->GetDefRange( range, var, stopOnBreak ); } - virtual std_unique_ptr FixVars( const RPArray & unfixed, + virtual std::unique_ptr FixVars( const RPArray & unfixed, PArray & newFuncs, EquTreeResCode & ) const; - virtual std_unique_ptr GetCalcEquivalent() const; + virtual std::unique_ptr GetCalcEquivalent() const; virtual void GetString( c3d::string_t & str ) const; virtual bool IsEqual ( const BTreeNode & other, const EqualVarsMap & equVars ) const { return other.IsEqual( *this, equVars ); } @@ -1475,9 +1475,9 @@ public : virtual BTreeNode * GetSubNode( size_t i ); virtual bool GetDefRange( DefRange &, ItTreeVariable &, bool stopOnBreak ) const; - virtual std_unique_ptr FixVars( const RPArray & unfixed, + virtual std::unique_ptr FixVars( const RPArray & unfixed, PArray & newFuncs, EquTreeResCode & ) const; - virtual std_unique_ptr GetCalcEquivalent() const; + virtual std::unique_ptr GetCalcEquivalent() const; virtual void GetString( c3d::string_t & str ) const; virtual bool IsEqual ( const BTreeNode & other, const EqualVarsMap & equVars ) const { return other.IsEqual( *this, equVars ); } @@ -1550,9 +1550,9 @@ public: // ССА K13 virtual bool GetCharacterPoints( std::vector & ) const { return false; } virtual bool GetDefRange( DefRange &, ItTreeVariable &, bool stopOnBreak ) const; - virtual std_unique_ptr FixVars( const RPArray & unfixed, + virtual std::unique_ptr FixVars( const RPArray & unfixed, PArray & newFuncs, EquTreeResCode & ) const; - virtual std_unique_ptr GetCalcEquivalent() const; + virtual std::unique_ptr GetCalcEquivalent() const; virtual void GetString( c3d::string_t & str ) const; virtual bool IsEqual ( const BTreeNode & other, const EqualVarsMap & equVars ) const { return other.IsEqual( *this, equVars ); } diff --git a/C3d/Include/pars_user_function.h b/C3d/Include/pars_user_function.h index 4c82ef1..83cfdbb 100644 --- a/C3d/Include/pars_user_function.h +++ b/C3d/Include/pars_user_function.h @@ -96,7 +96,7 @@ public: /// \ru Получить массив параметров. \en Get array of parameters. void GetPars ( RPArray & pars ) const; /// \ru Получить аргумент по индексу. \en Get argument by index. - ItTreeVariable * GetPar( size_t i ) const { return i < m_vars.Count() ? m_vars[i] : c3d_null; } + ItTreeVariable * GetPar( size_t i ) const { return i < m_vars.Count() ? m_vars[i] : nullptr; } /// \ru Подготовить объект к записи. \en Prepare an object for writing. void WritingBeginEnd( bool begin ) { RegisterVars( begin ? registrable : noRegistrable ); } /// \ru Оператор присваивания. \en Assignment operator. diff --git a/C3d/Include/pars_yacc.h b/C3d/Include/pars_yacc.h index a669b09..38d9580 100644 --- a/C3d/Include/pars_yacc.h +++ b/C3d/Include/pars_yacc.h @@ -71,7 +71,7 @@ struct ItEquVarCreator // --- MATH_FUNC(EquTreeResCode) CreateBTreeForEquation( const c3d::string_t & equstr , ItEquVarCreator & varsCreator - , std_unique_ptr & dRoot + , std::unique_ptr & dRoot ); @@ -87,8 +87,8 @@ MATH_FUNC(EquTreeResCode) CreateBTreeForEquation( const c3d::string_t & eq // --- MATH_FUNC(EquTreeResCode) CreateBTreeForExpression( const c3d::string_t & equstr , ItEquVarCreator * varsCreator - , std_unique_ptr & root - , std_unique_ptr & iRoot + , std::unique_ptr & root + , std::unique_ptr & iRoot ); @@ -128,7 +128,7 @@ MATH_FUNC(bool) IsInequality( const c3d::string_t & ); // --- MATH_FUNC(EquTreeResCode) CreateBTreeForEquation( const TCHAR * equstr , ItEquVarCreator & varsCreator - , std_unique_ptr & dRoot + , std::unique_ptr & dRoot ); @@ -144,8 +144,8 @@ MATH_FUNC(EquTreeResCode) CreateBTreeForEquation( const TCHAR * eq // --- MATH_FUNC(EquTreeResCode) CreateBTreeForExpression( const TCHAR * equstr , ItEquVarCreator * varsCreator - , std_unique_ptr & root - , std_unique_ptr & iRoot + , std::unique_ptr & root + , std::unique_ptr & iRoot ); diff --git a/C3d/Include/part_solid.h b/C3d/Include/part_solid.h index 4613b43..daab194 100644 --- a/C3d/Include/part_solid.h +++ b/C3d/Include/part_solid.h @@ -431,7 +431,7 @@ public: {} public: /// \ru Проверить данные на корректность. \en Check data for correctness. - bool IsValid() const { return (part != c3d_null && ind > -1 && id != SYS_MAX_UINT32); } + bool IsValid() const { return (part != nullptr && ind > -1 && id != SYS_MAX_UINT32); } private: /// \ru Конструктор без параметров. \en Constructor without parameters. MbPartSolidData(); diff --git a/C3d/Include/plane_instance.h b/C3d/Include/plane_instance.h index d0eeebe..20cd6fb 100644 --- a/C3d/Include/plane_instance.h +++ b/C3d/Include/plane_instance.h @@ -66,10 +66,10 @@ public : // \ru Общие функции геометрического объекта. \en Common functions of a geometric object. virtual MbeSpaceType IsA() const; // \ru Тип объекта. \en A type of an object. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate about an axis. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * iReg = nullptr ) const; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate about an axis. virtual bool IsSame ( const MbSpaceItem &, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными? \en Are the objects equal? virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными? \en Are the objects similar? virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать объекты равными. \en Make the objects equal. @@ -104,7 +104,7 @@ public : MbPlaneItem * SetPlaneItem( size_t ind = 0 ); /// \ru Заменить двумерный геометрический объект. \en Replace two-dimensional geometric object. bool SetPlaneItem( MbPlaneItem * init, size_t ind = 0 ); - /// \ru Добавить двумерный геометрический объект. \en Add two-dimensional geometric object. The method returns the index of added or existing object in MbPlaneInstance (the method returns SYS_MAX_T if the object is c3d_null). + /// \ru Добавить двумерный геометрический объект. \en Add two-dimensional geometric object. The method returns the index of added or existing object in MbPlaneInstance (the method returns SYS_MAX_T if the object is nullptr). size_t AddPlaneItem( MbPlaneItem * init ); /// \ru Метод возвращает индекс двумерного геометрического объекта. \en The method returns the index of two-dimensional geometric object in MbPlaneInstance (the method returns SYS_MAX_T if the object was not finded). size_t GetIndex( MbPlaneItem * init ); @@ -114,13 +114,13 @@ public : MbPlacement3D & SetPlacement() { return place; } /// \ru Преобразовать двумерный объект согласно матрице. \en Transform two-dimensional object according to the matrix. - void Transform( const MbMatrix &, MbRegTransform * iReg = c3d_null ); + void Transform( const MbMatrix &, MbRegTransform * iReg = nullptr ); /// \ru Сдвинуть двумерный объект вдоль вектора. \en Translate two-dimensional object along a vector. - void Move ( const MbVector &, MbRegTransform * iReg = c3d_null ); + void Move ( const MbVector &, MbRegTransform * iReg = nullptr ); /// \ru Повернуть двумерный объект вокруг точки на заданный угол. \en Rotate two-dimensional object at a given angle around an axis. - void Rotate ( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * iReg = c3d_null ); + void Rotate ( const MbCartPoint & pnt, const MbDirection & angle, MbRegTransform * iReg = nullptr ); /// \ru Повернуть двумерный объект вокруг точки на заданный угол. \en Rotate two-dimensional object at a given angle around an axis. - void Rotate ( const MbCartPoint & pnt, double angle, MbRegTransform * iReg = c3d_null ); + void Rotate ( const MbCartPoint & pnt, double angle, MbRegTransform * iReg = nullptr ); /// \ru Удалить все объекты эскиза. \en Delete all the sketch items. void DeleteItems(); @@ -168,7 +168,7 @@ inline MbPlaneInstance::MbPlaneInstance( const MbPlacement3D & p, const PlaneIte planeItems.reserve( addCnt ); for ( size_t k = 0; k < addCnt; ++k ) { const MbPlaneItem * planeItem = inits[k]; - if ( planeItem != c3d_null ) { + if ( planeItem != nullptr ) { planeItem->AddRef(); planeItems.push_back( const_cast( planeItem ) ); } @@ -187,7 +187,7 @@ void MbPlaneInstance::GetItems( PlaneItems & items ) const items.reserve( items.size() + addCnt ); SPtr item_i; for ( size_t i = 0; i < addCnt; ++i ) { - if ( planeItems[i] != c3d_null ) { + if ( planeItems[i] != nullptr ) { item_i = planeItems[i]; items.push_back( item_i ); } diff --git a/C3d/Include/plane_item.h b/C3d/Include/plane_item.h index 8447db5..9b88c9f 100644 --- a/C3d/Include/plane_item.h +++ b/C3d/Include/plane_item.h @@ -143,7 +143,7 @@ public : \return \ru Копия объекта. \en Copy of the object. \~ */ - virtual MbPlaneItem & Duplicate( MbRegDuplicate * iReg = c3d_null ) const = 0; + virtual MbPlaneItem & Duplicate( MbRegDuplicate * iReg = nullptr ) const = 0; /** \brief \ru Преобразовать согласно матрице. \en Transform according to the matrix. \~ @@ -174,7 +174,7 @@ public : For transformation of projection curve. It isn't considered if the surface is planar. \~ */ - virtual void Transform( const MbMatrix & matr, MbRegTransform * iReg = c3d_null, const MbSurface * newSurface = c3d_null ) = 0; + virtual void Transform( const MbMatrix & matr, MbRegTransform * iReg = nullptr, const MbSurface * newSurface = nullptr ) = 0; /** \brief \ru Сдвинуть вдоль вектора. \en Translate along a vector. \~ @@ -205,7 +205,7 @@ public : For transformation of projection curve. It isn't considered if the surface is planar. \~ */ - virtual void Move ( const MbVector & to, MbRegTransform * iReg = c3d_null, const MbSurface * newSurface = c3d_null ) = 0; + virtual void Move ( const MbVector & to, MbRegTransform * iReg = nullptr, const MbSurface * newSurface = nullptr ) = 0; /** \brief \ru Повернуть вокруг точки. \en Rotate about a point. \~ @@ -239,7 +239,7 @@ public : It isn't considered if the surface is planar. \~ */ virtual void Rotate( const MbCartPoint & pnt, const MbDirection & angle, - MbRegTransform * iReg = c3d_null, const MbSurface * newSurface = c3d_null ) = 0; + MbRegTransform * iReg = nullptr, const MbSurface * newSurface = nullptr ) = 0; /** \brief \ru Повернуть вокруг точки. \en Rotate about a point. \~ @@ -261,7 +261,7 @@ public : It isn't considered if the surface is planar. \~ */ void Rotate( const MbCartPoint & pnt, double angle, - MbRegTransform * iReg = c3d_null, const MbSurface * newSurface = c3d_null ); + MbRegTransform * iReg = nullptr, const MbSurface * newSurface = nullptr ); /** \brief \ru Определить, являются ли объекты равными. \en Determine whether objects are equal. \~ diff --git a/C3d/Include/point3d.h b/C3d/Include/point3d.h index 7bb9d1b..a8000ea 100644 --- a/C3d/Include/point3d.h +++ b/C3d/Include/point3d.h @@ -49,10 +49,10 @@ public: virtual MbeSpaceType IsA() const; // \ru Тип объекта. \en A type of an object. virtual MbeSpaceType Type() const; // \ru Групповой тип объекта. \en Group type of object. virtual MbeSpaceType Family() const; // \ru Семейство объекта. \en Family of object. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate about an axis. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate about an axis. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными? \en Are the objects equal? virtual bool SetEqual ( const MbSpaceItem & init ); // \ru Сделать объекты равным. \en Make the objects equal. virtual double DistanceToPoint ( const MbCartPoint3D & ) const; // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. diff --git a/C3d/Include/point_frame.h b/C3d/Include/point_frame.h index f1c18ff..4380319 100644 --- a/C3d/Include/point_frame.h +++ b/C3d/Include/point_frame.h @@ -72,7 +72,7 @@ public: size_t vertsCnt = verts.size(); vertices.reserve( vertsCnt ); for ( size_t k = 0; k < vertsCnt; ++k ) { - if ( verts[k] != c3d_null ) + if ( verts[k] != nullptr ) AddVertex( const_cast( *verts[k] ), same ); } } @@ -96,10 +96,10 @@ public: // \ru Общие функции геометрического объекта \en Common functions of a geometric object virtual MbeSpaceType IsA() const; // \ru Тип объекта. \en A type of an object. virtual MbeSpaceType Type() const; // \ru Групповой тип объекта. \en Group type of object. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate about an axis. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate about an axis. virtual bool IsSame ( const MbSpaceItem &, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными? \en Are the objects equal? virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными? \en Are the objects similar? virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать объекты равным. \en Make the objects equal. @@ -128,9 +128,9 @@ public: /// \ru Выдать количество вершин. \en Get count of vertices. size_t GetVerticesCount() const { return vertices.size(); } /// \ru Получить вершину по индексу. \en Get vertex by an index. - const MbVertex * GetVertex( size_t k ) const { return ((k < vertices.size()) ? vertices[k] : c3d_null ); } + const MbVertex * GetVertex( size_t k ) const { return ((k < vertices.size()) ? vertices[k] : nullptr ); } /// \ru Получить вершину по индексу для возможного редактирования. \en Get vertex by an index for the possible editing. - MbVertex * SetVertex( size_t k ) { return ((k < vertices.size()) ? vertices[k] : c3d_null ); } + MbVertex * SetVertex( size_t k ) { return ((k < vertices.size()) ? vertices[k] : nullptr ); } /// \ru Получить вершины. \en Get vertices. template diff --git a/C3d/Include/position_data.h b/C3d/Include/position_data.h index 180873b..27887fb 100644 --- a/C3d/Include/position_data.h +++ b/C3d/Include/position_data.h @@ -170,7 +170,7 @@ public: /// \ru Установить замкнутость. \en Set closedness. void SetClosed( bool c ) { closed = c; } - const MbCurveEdge * Edge ( size_t i ) const { return ( i < edges.Count() ) ? edges[i] : c3d_null; } + const MbCurveEdge * Edge ( size_t i ) const { return ( i < edges.Count() ) ? edges[i] : nullptr; } const bool Sense( size_t i ) const { return ( i < sense.Count() ) ? sense[i] : false; } size_t Count() const { return edges.Count(); } /// \ru Оператор присваивания. \en Assignment operator. diff --git a/C3d/Include/reference_item.h b/C3d/Include/reference_item.h index 548c9bb..607f2cd 100644 --- a/C3d/Include/reference_item.h +++ b/C3d/Include/reference_item.h @@ -96,10 +96,10 @@ class MATH_CLASS MbRefItem: virtual public c3d::MemoryLeaksVerifiable { #endif private: mutable use_count_type useCount; ///< \ru Счетчик ссылок на объект, изменяемый владельцами объекта. \en A counter of references to an object modifiable by owners of object. -public: +protected: /// \ru Конструктор без параметров. \en Constructor without parameters. MbRefItem(); -protected: +public: virtual ~MbRefItem(); public: @@ -195,9 +195,9 @@ template MbSerialItem::~MbSerialItem() template inline void DeleteMatItem( Type *& item ) { - if ( item != c3d_null ) { + if ( item != nullptr ) { delete item; - item = c3d_null; + item = nullptr; } } @@ -248,8 +248,8 @@ Type & DuplicateIfUsed( Type & item, RegType * iReg ) template Type * DuplicateIfUsed( SPtr & item ) { - if ( item == c3d_null ) - return c3d_null; + if ( item == nullptr ) + return nullptr; Type * resItem = item.get(); if ( item->GetUseCount() > 1 ) // \ru Если оригинал, то делаем копию. \en If there is original, then make a copy. resItem = static_cast( &item->Duplicate() ); @@ -264,8 +264,8 @@ Type * DuplicateIfUsed( SPtr & item ) template Type * DuplicateIfUsed( SPtr & item, RegType * iReg ) { - if ( item == c3d_null ) - return c3d_null; + if ( item == nullptr ) + return nullptr; Type * resItem = item.get(); if ( item->GetUseCount() > 1 ) // \ru Если оригинал, то делаем копию. \en If there is original, then make a copy. resItem = static_cast( &item->Duplicate( iReg ) ); @@ -279,10 +279,10 @@ Type * DuplicateIfUsed( SPtr & item, RegType * iReg ) template void DeleteItem( Type *& item ) { - if ( item != c3d_null ) { + if ( item != nullptr ) { if ( item->GetUseCount() < 1 ) delete item; - item = c3d_null; + item = nullptr; } } @@ -292,9 +292,9 @@ void DeleteItem( Type *& item ) template void ReleaseItem( Type *& item ) { - if ( item != c3d_null ) { + if ( item != nullptr ) { item->Release(); - item = c3d_null; // SKIP_SA + item = nullptr; // SKIP_SA } } // SKIP_SA @@ -304,7 +304,7 @@ void ReleaseItem( Type *& item ) template void AddRefItem( const Type * item ) { - if ( item != c3d_null ) + if ( item != nullptr ) item->AddRef(); } @@ -314,7 +314,7 @@ void AddRefItem( const Type * item ) template void DecRefItem( const Type * item ) { - if ( item != c3d_null ) + if ( item != nullptr ) item->DecRef(); } @@ -326,7 +326,7 @@ template void AddRefItems( const ItemsVector & items ) { for ( size_t k = 0, itemsCnt = items.size(); k < itemsCnt; ++k ) { - if ( items[k] != c3d_null ) + if ( items[k] != nullptr ) items[k]->AddRef(); } } @@ -339,7 +339,7 @@ template void DecRefItems( const ItemsVector & items ) { for ( size_t k = 0, itemsCnt = items.size(); k < itemsCnt; ++k ) { - if ( items[k] != c3d_null ) + if ( items[k] != nullptr ) items[k]->DecRef(); } } @@ -442,7 +442,7 @@ void AddRefItems( const TypeVector & srcItems, bool same, RPArray & dstIte if ( (srcItems.size() > 0) && reinterpret_cast( &srcItems ) != reinterpret_cast( &dstItems ) ) { dstItems.reserve( dstItems.size() + srcItems.size() ); for ( size_t k = 0, cnt = srcItems.size(); k < cnt; ++k ) { - if ( srcItems[k] != c3d_null ) { + if ( srcItems[k] != nullptr ) { Type * srcItem = &const_cast(*srcItems[k]); Type * dstItem = same ? srcItem : static_cast( &srcItem->Duplicate() ); dstItem->AddRef(); @@ -462,7 +462,7 @@ void AddRefItems( const TypeVector & srcItems, bool same, std::vector< SPtr 0) && reinterpret_cast(&srcItems) != reinterpret_cast(&dstItems) ) { dstItems.reserve( dstItems.size() + srcItems.size() ); for ( size_t k = 0, cnt = srcItems.size(); k < cnt; k++ ) { - if ( srcItems[k] != c3d_null ) { + if ( srcItems[k] != nullptr ) { Type * srcItem = &const_cast(*srcItems[k]); SPtr dstItem; dstItem = same ? srcItem : static_cast( &srcItem->Duplicate() ); @@ -482,7 +482,7 @@ void AddRefItems( const TypeVector & srcItems, bool same, std::vector & if ( (srcItems.size() > 0) && reinterpret_cast( &srcItems ) != reinterpret_cast( &dstItems ) ) { dstItems.reserve( dstItems.size() + srcItems.size() ); for ( size_t k = 0, cnt = srcItems.size(); k < cnt; ++k ) { - if ( srcItems[k] != c3d_null ) { + if ( srcItems[k] != nullptr ) { Type * srcItem = &const_cast(*srcItems[k]); Type * dstItem = same ? srcItem : static_cast( &srcItem->Duplicate() ); dstItem->AddRef(); @@ -502,7 +502,7 @@ void AddRefRegItems( const TypeVector & srcItems, bool same, RPArray & dst if ( (srcItems.size() > 0) && reinterpret_cast(&srcItems) != reinterpret_cast(&dstItems) ) { dstItems.reserve( dstItems.size() + srcItems.size() ); for ( size_t k = 0, cnt = srcItems.size(); k < cnt; ++k ) { - if ( srcItems[k] != c3d_null ) { + if ( srcItems[k] != nullptr ) { Type * srcItem = &const_cast(*srcItems[k]); Type * dstItem = same ? srcItem : static_cast( &srcItem->Duplicate( iReg ) ); dstItem->AddRef(); @@ -522,7 +522,7 @@ void AddRefRegItems( const TypeVector & srcItems, bool same, std::vector< SPtr 0) && reinterpret_cast(&srcItems) != reinterpret_cast(&dstItems) ) { dstItems.reserve( dstItems.size() + srcItems.size() ); for ( size_t k = 0, cnt = srcItems.size(); k < cnt; ++k ) { - if ( srcItems[k] != c3d_null ) { + if ( srcItems[k] != nullptr ) { Type * srcItem = &const_cast(*srcItems[k]); SPtr dstItem; dstItem = same ? srcItem : static_cast( &srcItem->Duplicate( iReg ) ); @@ -542,7 +542,7 @@ void AddRefRegItems( const TypeVector & srcItems, bool same, std::vector if ( (srcItems.size() > 0) && reinterpret_cast(&srcItems) != reinterpret_cast(&dstItems) ) { dstItems.reserve( dstItems.size() + srcItems.size() ); for ( size_t k = 0, cnt = srcItems.size(); k < cnt; ++k ) { - if ( srcItems[k] != c3d_null ) { + if ( srcItems[k] != nullptr ) { Type * srcItem = &const_cast(*srcItems[k]); Type * dstItem = same ? srcItem : static_cast( &srcItem->Duplicate( iReg ) ); dstItem->AddRef(); @@ -559,9 +559,9 @@ void AddRefRegItems( const TypeVector & srcItems, bool same, std::vector template bool IsItemSame( const Item * item1, const Item * item2, double accuracy ) { - if ( (item1 == c3d_null) && (item2 == c3d_null) ) + if ( (item1 == nullptr) && (item2 == nullptr) ) return true; - else if ( (item1 != c3d_null) && (item2 != c3d_null) && item1->IsSame( *item2, accuracy ) ) + else if ( (item1 != nullptr) && (item2 != nullptr) && item1->IsSame( *item2, accuracy ) ) return true; return false; } @@ -579,7 +579,7 @@ bool AreItemsSame( const Vector & items1, const Vector & items2, double accuracy if ( cnt == items2.size() ) { areEqual = true; for ( size_t k = 0; k < cnt; ++k ) { - if ( (items1[k] == c3d_null) || (items2[k] == c3d_null) || !items1[k]->IsSame( *items2[k], accuracy ) ) { + if ( (items1[k] == nullptr) || (items2[k] == nullptr) || !items1[k]->IsSame( *items2[k], accuracy ) ) { areEqual = false; break; } @@ -625,7 +625,7 @@ bool AreItemsSimilar( const Vector & items1, const Vector & items2 ) if ( cnt == items2.size() ) { areEqual = true; for ( size_t k = 0; k < cnt; ++k ) { - if ( (items1[k] == c3d_null) || (items2[k] == c3d_null) || !items1[k]->IsSimilar( *items2[k] ) ) { + if ( (items1[k] == nullptr) || (items2[k] == nullptr) || !items1[k]->IsSimilar( *items2[k] ) ) { areEqual = false; break; } @@ -650,7 +650,7 @@ bool SetItemsEqual( const Vector & srcItems, Vector & dstItems ) if ( setEqual ) { for ( size_t k = 0; k < cnt; ++k ) { - if ( srcItems[k] == c3d_null || dstItems[k] == c3d_null || !dstItems[k]->SetEqual( *srcItems[k] ) ) { + if ( srcItems[k] == nullptr || dstItems[k] == nullptr || !dstItems[k]->SetEqual( *srcItems[k] ) ) { setEqual = false; break; } @@ -672,7 +672,7 @@ void DuplicateItems( const TypeVector & srcItems, RegType * iReg, bool same, RPA dstItems.Reserve( srcItems.size() ); for ( size_t k = 0, cnt = srcItems.size(); k < cnt; ++k ) { Type * srcItem = srcItems[k]; - if ( srcItem != c3d_null ) { + if ( srcItem != nullptr ) { Type * dstItem = same ? srcItem : static_cast( &srcItem->Duplicate( iReg ) ); dstItems.push_back( dstItem ); } @@ -690,7 +690,7 @@ void DuplicateItems( const TypeVector & srcItems, RegType * iReg, bool same, std dstItems.reserve( dstItems.size() + srcItems.size() ); for ( size_t k = 0, cnt = srcItems.size(); k < cnt; ++k ) { Type * srcItem = srcItems[k]; - if ( srcItem != c3d_null ) { + if ( srcItem != nullptr ) { SPtr dstItem; dstItem = same ? srcItem : static_cast( &srcItem->Duplicate( iReg ) ); dstItems.push_back( dstItem ); @@ -709,7 +709,7 @@ void DuplicateItems( const TypeVector & srcItems, RegType * iReg, bool same, std dstItems.reserve( dstItems.size() + srcItems.size() ); for ( size_t k = 0, cnt = srcItems.size(); k < cnt; ++k ) { Type * srcItem = srcItems[k]; - if ( srcItem != c3d_null ) { + if ( srcItem != nullptr ) { Type * dstItem = same ? srcItem : static_cast( &srcItem->Duplicate( iReg ) ); dstItems.push_back( dstItem ); } @@ -724,7 +724,7 @@ template void TransformItems( Array & items, const Matrix & matr, RegType * iReg ) { for ( size_t k = 0, cnt = items.size(); k < cnt; ++k ) { - if ( items[k] != c3d_null ) + if ( items[k] != nullptr ) items[k]->Transform( matr, iReg ); } } @@ -736,7 +736,7 @@ template void TransformItems( Array & items, const Matrix & matr ) { for ( size_t k = 0, cnt = items.size(); k < cnt; ++k ) { - if ( items[k] != c3d_null ) + if ( items[k] != nullptr ) items[k]->Transform( matr ); } } @@ -759,7 +759,7 @@ template void MoveItems( Array & items, const Vector & to, RegType * iReg ) { for ( size_t k = 0, cnt = items.size(); k < cnt; ++k ) { - if ( items[k] != c3d_null ) + if ( items[k] != nullptr ) items[k]->Move( to, iReg ); } } @@ -771,7 +771,7 @@ template void MoveItems( Array & items, const Vector & to ) { for ( size_t k = 0, cnt = items.size(); k < cnt; ++k ) { - if ( items[k] != c3d_null ) + if ( items[k] != nullptr ) items[k]->Move( to ); } } @@ -794,7 +794,7 @@ template void RotateItems( Array & items, const Axis & axis, double angle, RegType * iReg ) { for ( size_t k = 0, cnt = items.size(); k < cnt; ++k ) { - if ( items[k] != c3d_null ) + if ( items[k] != nullptr ) items[k]->Rotate( axis, angle, iReg ); } } @@ -806,7 +806,7 @@ template void RotateItems( Array & items, const Axis & axis, double angle ) { for ( size_t k = 0, cnt = items.size(); k < cnt; ++k ) { - if ( items[k] != c3d_null ) + if ( items[k] != nullptr ) items[k]->Rotate( axis, angle ); } } @@ -831,7 +831,7 @@ void WriteRefItems( const Vector & items, Writer & out ) size_t k, cnt = items.size(); for ( k = 0; k < cnt; ++k ) { - if ( items[k] == c3d_null ) + if ( items[k] == nullptr ) cnt--; } @@ -839,7 +839,7 @@ void WriteRefItems( const Vector & items, Writer & out ) if ( out.good() ) { for ( k = 0; k < cnt; ++k ) { - if ( items[k] != c3d_null ) { + if ( items[k] != nullptr ) { items[k]->PrepareWrite(); out << &(*items[k]); } @@ -857,7 +857,7 @@ void WriteRefItems( const std::vector< SPtr > & items, Writer & out ) size_t k, cnt = items.size(); for ( k = 0; k < cnt; ++k ) { - if ( items[k] == c3d_null ) + if ( items[k] == nullptr ) cnt--; } @@ -865,7 +865,7 @@ void WriteRefItems( const std::vector< SPtr > & items, Writer & out ) if ( out.good() ) { for ( k = 0; k < cnt; ++k ) { - if ( items[k] != c3d_null ) { + if ( items[k] != nullptr ) { items[k]->PrepareWrite(); out << items[k].get(); } @@ -886,9 +886,9 @@ void ReadRefItems( Reader & in, RPArray & items ) items.reserve( items.size() + cnt ); for ( size_t i = 0; i < cnt; ++i ) { - Type * item = c3d_null; + Type * item = nullptr; in >> item; - if ( item != c3d_null ) { + if ( item != nullptr ) { items.push_back( item ); item->AddRef(); } @@ -907,9 +907,9 @@ void ReadRefItems( Reader & in, std::vector & items ) if ( in.good() && cnt > 0 ) { for ( size_t i = 0; i < cnt; ++i ) { - Type * item = c3d_null; + Type * item = nullptr; in >> item; - if ( item != c3d_null ) { + if ( item != nullptr ) { items.push_back( item ); item->AddRef(); } @@ -928,9 +928,9 @@ void ReadRefItems( Reader & in, std::vector< SPtr > & items ) if ( in.good() && cnt > 0 ) { for ( size_t i = 0; i < cnt; ++i ) { - Type * item = c3d_null; + Type * item = nullptr; in >> item; - if ( item != c3d_null ) + if ( item != nullptr ) items.push_back( SPtr(item) ); } } @@ -1069,7 +1069,7 @@ inline Type * DetachItem( SPtr & itemOwner ) template void ReplaceByCopy( Type *& item ) { - if ( item != c3d_null ) { + if ( item != nullptr ) { Type * temp = static_cast( &item->Duplicate() ); ::DeleteItem( item ); item = temp; @@ -1084,7 +1084,7 @@ template void AddYourGabaritTo( Objects & objects, Gab & gab ) { for ( size_t k = 0, cnt = objects.size(); k < cnt; ++k ) { - if ( objects[k] != c3d_null ) + if ( objects[k] != nullptr ) objects[k]->AddYourGabaritTo( gab ); } } diff --git a/C3d/Include/region.h b/C3d/Include/region.h index 995dc57..971247a 100644 --- a/C3d/Include/region.h +++ b/C3d/Include/region.h @@ -51,7 +51,7 @@ public: MbRegion( const SPtr &, bool same ); ///< \ru Регион с одним внешним контуром. \en Region with one external contour. MbRegion( const RPArray &, bool same ); ///< \ru Регион с несколькими контурами. \en Region with several contours. MbRegion( const std::vector< SPtr > &, bool same ); ///< \ru Регион с несколькими контурами. \en Region with several contours. - MbRegion( const MbRegion &, bool same, MbRegDuplicate * iReg = c3d_null ); ///< \ru Конструктор копии. \en Copy-constructor. + MbRegion( const MbRegion &, bool same, MbRegDuplicate * iReg = nullptr ); ///< \ru Конструктор копии. \en Copy-constructor. public: virtual ~MbRegion(); @@ -63,10 +63,10 @@ public: virtual MbePlaneType IsA() const; // \ru Тип объекта. \en A type of an object. virtual MbePlaneType Type() const; // \ru Групповой тип объекта. \en Group type of object. virtual MbePlaneType Family() const; // \ru Семейство объекта. \en Family of object. - virtual MbPlaneItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию. \en Create a copy - virtual void Transform( const MbMatrix &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector &, MbRegTransform * = c3d_null, const MbSurface * newSurface = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. - virtual void Rotate ( const MbCartPoint &, const MbDirection & angle, MbRegTransform * iReg = c3d_null, const MbSurface * newSurface = c3d_null ); + virtual MbPlaneItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию. \en Create a copy + virtual void Transform( const MbMatrix &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector &, MbRegTransform * = nullptr, const MbSurface * newSurface = nullptr ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. + virtual void Rotate ( const MbCartPoint &, const MbDirection & angle, MbRegTransform * iReg = nullptr, const MbSurface * newSurface = nullptr ); virtual bool IsSame ( const MbPlaneItem &, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными? \en Determine whether objects are equal. virtual bool SetEqual ( const MbPlaneItem & ); // \ru Сделать объекты равным. \en Make objects equal. virtual void AddYourGabaritTo( MbRect & ) const; // \ru Добавить свой габарит в присланный габарит. \en Add your own bounding box into the sent bounding box. @@ -276,7 +276,7 @@ private: // --- MATH_FUNC (bool) CreateBooleanResultRegions( RPArray & contours1, RPArray & contours2, const MbRegionBooleanParams & operParams, RPArray & regions, - MbResultType * resInfo = c3d_null ); + MbResultType * resInfo = nullptr ); //------------------------------------------------------------------------------- @@ -301,7 +301,7 @@ MATH_FUNC (bool) CreateBooleanResultRegions( RPArray & contours1, RPA // --- MATH_FUNC (bool) CreateBooleanResultRegions( MbRegion & region1, MbRegion & region2, const MbRegionBooleanParams & operParams, RPArray & regions, - MbResultType * resInfo = c3d_null ); + MbResultType * resInfo = nullptr ); //------------------------------------------------------------------------------- diff --git a/C3d/Include/sheet_metal_param.h b/C3d/Include/sheet_metal_param.h index 781a4d2..efbeb34 100644 --- a/C3d/Include/sheet_metal_param.h +++ b/C3d/Include/sheet_metal_param.h @@ -1358,11 +1358,11 @@ struct MATH_CLASS MbRuledSolidValues { /// \ru Конструктор по умолчанию. \en Default constructor. MbRuledSolidValues() : placement1 ( ), - contour1 ( c3d_null ), - breaks1 ( c3d_null ), - placement2 ( c3d_null ), - contour2 ( c3d_null ), - breaks2 ( c3d_null ), + contour1 ( nullptr ), + breaks1 ( nullptr ), + placement2 ( nullptr ), + contour2 ( nullptr ), + breaks2 ( nullptr ), thickness ( 0.0 ), radius ( 0.0 ), slopeAngle ( 0.0 ), @@ -1376,16 +1376,16 @@ struct MATH_CLASS MbRuledSolidValues { cylindricBends ( false ), joinByVertices ( true ), surfDistance ( 0.0 ), - surface ( c3d_null ) { + surface ( nullptr ) { } /// \ru Конструктор копирования. \en Copy-constructor. MbRuledSolidValues( const MbRuledSolidValues & other ) : placement1 ( other.placement1 ), - contour1 ( (other.contour1 != c3d_null) ? new MbContour() : c3d_null ), - breaks1 ( (other.breaks1 != c3d_null) ? new SArray(*other.breaks1) : c3d_null ), - placement2 ( (other.placement2 != c3d_null) ? new MbPlacement3D(*other.placement2) : c3d_null ), - contour2 ( (other.contour2 != c3d_null) ? new MbContour() : c3d_null ), - breaks2 ( (other.breaks2 != c3d_null) ? new SArray(*other.breaks2) : c3d_null ), + contour1 ( (other.contour1 != nullptr) ? new MbContour() : nullptr ), + breaks1 ( (other.breaks1 != nullptr) ? new SArray(*other.breaks1) : nullptr ), + placement2 ( (other.placement2 != nullptr) ? new MbPlacement3D(*other.placement2) : nullptr ), + contour2 ( (other.contour2 != nullptr) ? new MbContour() : nullptr ), + breaks2 ( (other.breaks2 != nullptr) ? new SArray(*other.breaks2) : nullptr ), thickness ( other.thickness ), radius ( other.radius ), slopeAngle ( other.slopeAngle ), @@ -1399,10 +1399,10 @@ struct MATH_CLASS MbRuledSolidValues { cylindricBends ( other.cylindricBends ), joinByVertices ( other.joinByVertices ), surfDistance ( other.surfDistance ), - surface ( (other.surface != c3d_null) ? static_cast(&other.surface->Duplicate()) : c3d_null ) { - if ( contour1 != c3d_null && other.contour1 != c3d_null ) + surface ( (other.surface != nullptr) ? static_cast(&other.surface->Duplicate()) : nullptr ) { + if ( contour1 != nullptr && other.contour1 != nullptr ) contour1->Init( *other.contour1 ); - if ( contour2 != c3d_null && other.contour2 != c3d_null ) + if ( contour2 != nullptr && other.contour2 != nullptr ) contour2->Init( *other.contour2 ); } /// \ru Конструктор по конкретным параметрам. \en Constructor by specific parameters. @@ -1414,10 +1414,10 @@ struct MATH_CLASS MbRuledSolidValues { const double surfDist, const MbSurface * surf ) : placement1( place1 ), contour1( new MbContour() ), - breaks1( (brks1 != c3d_null) ? new SArray(*brks1) : c3d_null ), - placement2( (place2 != c3d_null) ? new MbPlacement3D(*place2) : c3d_null ), - contour2( (cntr2 != c3d_null) ? new MbContour() : c3d_null ), - breaks2( (brks2 != c3d_null) ? new SArray(*brks2) : c3d_null ), + breaks1( (brks1 != nullptr) ? new SArray(*brks1) : nullptr ), + placement2( (place2 != nullptr) ? new MbPlacement3D(*place2) : nullptr ), + contour2( (cntr2 != nullptr) ? new MbContour() : nullptr ), + breaks2( (brks2 != nullptr) ? new SArray(*brks2) : nullptr ), thickness( thick ), radius( rad ), slopeAngle( sAngle ), @@ -1431,58 +1431,58 @@ struct MATH_CLASS MbRuledSolidValues { cylindricBends( cylBends ), joinByVertices( joinByVert ), surfDistance( surfDist ), - surface( (surf != c3d_null) ? static_cast(&surf->Duplicate()) : c3d_null ) { + surface( (surf != nullptr) ? static_cast(&surf->Duplicate()) : nullptr ) { contour1->Init( cntr1 ); - if ( (contour2 != c3d_null) && (cntr2 != c3d_null) ) + if ( (contour2 != nullptr) && (cntr2 != nullptr) ) contour2->Init( *cntr2 ); } /// \ru Инициализировать по другому объекту. \en Initialize by another object. void Init( const MbRuledSolidValues & other ) { placement1.Init( other.placement1 ); - if ( other.contour1 != c3d_null ) { - if ( contour1 == c3d_null ) + if ( other.contour1 != nullptr ) { + if ( contour1 == nullptr ) contour1 = new MbContour(); contour1->Init( *other.contour1 ); } else - contour1 = c3d_null; + contour1 = nullptr; - if ( other.breaks1 != c3d_null ) { - if ( breaks1 != c3d_null ) + if ( other.breaks1 != nullptr ) { + if ( breaks1 != nullptr ) ((SArray &)*breaks1) = *other.breaks1; else breaks1 = new SArray( *other.breaks1 ); } else - breaks1 = c3d_null; + breaks1 = nullptr; - if ( other.placement2 != c3d_null ) { - if ( placement2 != c3d_null ) + if ( other.placement2 != nullptr ) { + if ( placement2 != nullptr ) placement2->Init( *other.placement2 ); else placement2 = new MbPlacement3D( *other.placement2 ); } else - placement2 = c3d_null; + placement2 = nullptr; - if ( other.contour2 != c3d_null ) { - if ( contour2 == c3d_null ) + if ( other.contour2 != nullptr ) { + if ( contour2 == nullptr ) contour2 = new MbContour(); contour2->Init( *other.contour2 ); } else - contour2 = c3d_null; + contour2 = nullptr; - if ( other.breaks2 != c3d_null ) { - if ( breaks2 != c3d_null ) + if ( other.breaks2 != nullptr ) { + if ( breaks2 != nullptr ) ((SArray &)*breaks2) = *other.breaks2; else breaks2 = new SArray( *other.breaks2 ); } else - breaks1 = c3d_null; + breaks1 = nullptr; thickness = other.thickness; radius = other.radius; @@ -1498,54 +1498,54 @@ struct MATH_CLASS MbRuledSolidValues { joinByVertices = other.joinByVertices; surfDistance = other.surfDistance; - if ( other.surface != c3d_null ) + if ( other.surface != nullptr ) surface = static_cast( &other.surface->Duplicate() ); else - surface = c3d_null; + surface = nullptr; } /// \ru Инициализировать контуры. \en Initialize contours. void Init( const MbPlacement3D & place1, const MbContour & cntr1, const SArray * brks1, const MbPlacement3D * place2, const MbContour * cntr2, const SArray * brks2 ) { placement1.Init( place1 ); - if ( contour1 == c3d_null ) + if ( contour1 == nullptr ) contour1 = new MbContour(); contour1->Init( cntr1 ); - if ( brks1 != c3d_null ) { - if ( breaks1 != c3d_null ) + if ( brks1 != nullptr ) { + if ( breaks1 != nullptr ) ((SArray &)*breaks1) = *brks1; else breaks1 = new SArray( *brks1 ); } else - breaks1 = c3d_null; + breaks1 = nullptr; - if ( place2 != c3d_null ) { - if ( placement2 != c3d_null ) + if ( place2 != nullptr ) { + if ( placement2 != nullptr ) placement2->Init( *place2 ); else placement2 = new MbPlacement3D( *place2 ); } else - placement2 = c3d_null; + placement2 = nullptr; - if ( cntr2 != c3d_null ) { - if ( contour2 == c3d_null ) + if ( cntr2 != nullptr ) { + if ( contour2 == nullptr ) contour2 = new MbContour(); contour2->Init( *cntr2 ); } else - contour2 = c3d_null; + contour2 = nullptr; - if ( brks2 != c3d_null ) { - if ( breaks2 != c3d_null ) + if ( brks2 != nullptr ) { + if ( breaks2 != nullptr ) ((SArray &)*breaks2) = *brks2; else breaks2 = new SArray( *brks2 ); } else - breaks1 = c3d_null; + breaks1 = nullptr; } /// \ru Оператор присваивания. \en Assignment operator. @@ -1574,18 +1574,18 @@ struct MATH_CLASS MbRuledSolidValues { ::fabs( gapShift - other.gapShift ) < accuracy && ::fabs( surfDistance - other.surfDistance ) < accuracy ) { - bool isContour1 = contour1 != c3d_null; - bool isOtherContour1 = other.contour1 != c3d_null; - bool isBreaks1 = breaks1 != c3d_null; - bool isOtherBreaks1 = other.breaks1 != c3d_null; - bool isPlacement2 = placement2 != c3d_null; - bool isOtherPlacement2 = other.placement2 != c3d_null; - bool isContour2 = contour2 != c3d_null; - bool isOtherContour2 = other.contour2 != c3d_null; - bool isBreaks2 = breaks2 != c3d_null; - bool isOtherBreaks2 = other.breaks2 != c3d_null; - bool isSurf = surface != c3d_null; - bool isOtherSurf = other.surface != c3d_null; + bool isContour1 = contour1 != nullptr; + bool isOtherContour1 = other.contour1 != nullptr; + bool isBreaks1 = breaks1 != nullptr; + bool isOtherBreaks1 = other.breaks1 != nullptr; + bool isPlacement2 = placement2 != nullptr; + bool isOtherPlacement2 = other.placement2 != nullptr; + bool isContour2 = contour2 != nullptr; + bool isOtherContour2 = other.contour2 != nullptr; + bool isBreaks2 = breaks2 != nullptr; + bool isOtherBreaks2 = other.breaks2 != nullptr; + bool isSurf = surface != nullptr; + bool isOtherSurf = other.surface != nullptr; if ( isContour1 == isOtherContour1 && isBreaks1 == isOtherBreaks1 && @@ -1795,13 +1795,13 @@ public: size_t i, cnt; for ( i = 0, cnt = innerFaces.Count(); i < cnt && isSame; i++ ) - if ( innerFaces[i] == c3d_null || other.innerFaces[i] == c3d_null || !innerFaces[i]->IsSame( *other.innerFaces[i], accuracy ) ) { + if ( innerFaces[i] == nullptr || other.innerFaces[i] == nullptr || !innerFaces[i]->IsSame( *other.innerFaces[i], accuracy ) ) { isSame = false; break; } for ( i = 0, cnt = outerFaces.Count(); i < cnt && isSame; i++ ) - if ( outerFaces[i] == c3d_null || other.outerFaces[i] == c3d_null || !outerFaces[i]->IsSame( *other.outerFaces[i], accuracy ) ) { + if ( outerFaces[i] == nullptr || other.outerFaces[i] == nullptr || !outerFaces[i]->IsSame( *other.outerFaces[i], accuracy ) ) { isSame = false; break; } diff --git a/C3d/Include/solid.h b/C3d/Include/solid.h index 2575849..330bf69 100644 --- a/C3d/Include/solid.h +++ b/C3d/Include/solid.h @@ -143,10 +143,10 @@ public : // \ru Общие функции геометрического объекта. \en Common functions of a geometric object. virtual MbeSpaceType IsA() const; // \ru Тип объекта. \en A type of an object. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * iReg = c3d_null ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * iReg = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * iReg = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * iReg = nullptr ) const; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * iReg = nullptr ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * iReg = nullptr ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * iReg = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual bool IsSame ( const MbSpaceItem &, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными? \en Determine whether objects are equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными? \en Determine whether objects are similar. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать объекты равными. \en Make the objects equal. @@ -246,22 +246,22 @@ public : size_t GetFacesCount() const { return outer ? outer->GetFacesCount() : 0; } /// \ru Заполнить контейнер вершинами тела. \en Fill container by solid vertices. template - void GetVertices( VerticesVector & vertices ) const { if ( outer != c3d_null ) { outer->GetVertices( vertices ); } } + void GetVertices( VerticesVector & vertices ) const { if ( outer != nullptr ) { outer->GetVertices( vertices ); } } /// \ru Заполнить контейнер ориентированными ребрами тела. \en Fill container by oriented edges of the solid. template - void GetEdges( EdgesVector & edges ) const { if ( outer != c3d_null ) { outer->GetEdges( edges ); } } + void GetEdges( EdgesVector & edges ) const { if ( outer != nullptr ) { outer->GetEdges( edges ); } } /// \ru Заполнить контейнеры вершинами и ребрами тела. \en Fill containers by vertices and edges of the solid. template - void GetItems( VerticesVector & vertices, EdgesVector & edges ) const { if ( outer != c3d_null ) { outer->GetItems( vertices, edges ); } } + void GetItems( VerticesVector & vertices, EdgesVector & edges ) const { if ( outer != nullptr ) { outer->GetItems( vertices, edges ); } } /// \ru Заполнить контейнер гранями тела. \en Fill container by solid faces. template - void GetFaces ( FacesVector & faces ) const { if ( outer != c3d_null ) { outer->GetFaces( faces ); } } + void GetFaces ( FacesVector & faces ) const { if ( outer != nullptr ) { outer->GetFaces( faces ); } } /// \ru Заполнить контейнер гранями тела. \en Fill container by solid faces. template - void GetFacesSet( FacesSet & faces ) const { if ( outer != c3d_null ) { outer->GetFacesSet( faces ); } } + void GetFacesSet( FacesSet & faces ) const { if ( outer != nullptr ) { outer->GetFacesSet( faces ); } } /// \ru Заполнить контейнер вершинами, ребрами и гранями тела. \en Fill container by vertices, edges and faces of the solid. template - void GetItems( TopologyItemsVector & items ) const { if ( outer != c3d_null ) { outer->GetItems( items ); } } + void GetItems( TopologyItemsVector & items ) const { if ( outer != nullptr ) { outer->GetItems( items ); } } /// \ru Выдать вершину по её номеру. \en Get vertex by its index. MbVertex * GetVertex( size_t index ) const; diff --git a/C3d/Include/space_instance.h b/C3d/Include/space_instance.h index 11d7d35..208b5ee 100644 --- a/C3d/Include/space_instance.h +++ b/C3d/Include/space_instance.h @@ -73,10 +73,10 @@ public : // \ru Общие функции геометрического объекта. \en Common functions of a geometric object. virtual MbeSpaceType IsA() const; // \ru Тип объекта. \en A type of an object. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * iReg = c3d_null ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * iReg = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * iReg = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate about an axis. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * iReg = nullptr ) const; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * iReg = nullptr ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * iReg = nullptr ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * iReg = nullptr ); // \ru Повернуть вокруг оси. \en Rotate about an axis. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными? \en Are the objects equal? virtual bool IsSimilar( const MbSpaceItem & init ) const; // \ru Являются ли объекты подобными? \en Are the objects similar? virtual bool SetEqual ( const MbSpaceItem & init ); // \ru Сделать объекты равными. \en Make the objects equal. diff --git a/C3d/Include/space_item.h b/C3d/Include/space_item.h index 4b76de1..c730531 100644 --- a/C3d/Include/space_item.h +++ b/C3d/Include/space_item.h @@ -122,7 +122,7 @@ enum MbeSpaceType { st_SplineSurface = 319, ///< \ru NURBS поверхность, определяемая точками. \en NURBS surface. st_GridSurface = 320, ///< \ru Поверхность, определяемая точками. \en Surface defined by points. st_TriBezierSurface = 321, ///< \ru Треугольная Bezier поверхность, определяемая точками. \en Triangular Bezier surface. - st_TriSplineSurface = 322, ///< \ru Треугольная NURBS поверхность, определяемая точками. \en Triangular NURBS surface. + st_SimplexSurface = 322, ///< \ru Треугольная NURBS поверхность, определяемая точками. \en Triangular NURBS surface. st_OffsetSurface = 323, ///< \ru Эквидистантная поверхность. \en Offset surface. st_DeformedSurface = 324, ///< \ru Деформированная поверхность. \en Deformed surface. st_NurbsSurface = 325, ///< \ru NURBS поверхность, определяемая кривыми. \en NURBS surface defined by curves. @@ -149,6 +149,7 @@ enum MbeSpaceType { st_GregoryRibbonPatchSurface= 346, ///< \ru Поверхность Грегори с граничными условиями. \en Gregory patch surface with ribbons. st_ExplorationSurface = 347, ///< \ru Поверхность заметания с масштабированием и поворотом образующей кривой. \en Swept surface with scaling and winding of generating curve. st_SectionSurface = 348, ///< \ru Поверхность заметания переменного сечения. \en The swept mutable section surface. + st_SimplexSpline = 349, ///< \ru Поверхность, моделирующая симплексный сплайн. st_FreeSurface = 400, ///< \ru Тип для поверхностей, созданных пользователем. \en Type for the user-defined surfaces. \n // \ru Типы вспомогательных объектов. \en Helper object types. @@ -246,7 +247,7 @@ public : \return \ru Копия объекта. \en A copy of the object. */ - virtual MbSpaceItem & Duplicate( MbRegDuplicate * iReg = c3d_null ) const = 0; + virtual MbSpaceItem & Duplicate( MbRegDuplicate * iReg = nullptr ) const = 0; /** \brief \ru Преобразовать объект согласно матрице. \en Convert the object according to the matrix. \~ @@ -269,7 +270,7 @@ public : \param[in] iReg - \ru Регистратор. \en Registrator. */ - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = c3d_null ) = 0; + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = nullptr ) = 0; /** \brief \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. \~ @@ -292,7 +293,7 @@ public : \param[in] iReg - \ru Регистратор. \en Registrator. */ - virtual void Move ( const MbVector3D & to, MbRegTransform * iReg = c3d_null ) = 0; + virtual void Move ( const MbVector3D & to, MbRegTransform * iReg = nullptr ) = 0; /** \brief \ru Повернуть объект вокруг оси на заданный угол. \en Rotate an object around an axis at a given angle. \~ @@ -317,7 +318,7 @@ public : \param[in] iReg - \ru Регистратор. \en Registrator. */ - virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = c3d_null ) = 0; + virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = nullptr ) = 0; /** \brief \ru Определить, являются ли объекты равными. \en Determine whether an object is equal. \~ diff --git a/C3d/Include/surf_chamfer_surface.h b/C3d/Include/surf_chamfer_surface.h index 5d0d08f..bcbb1ff 100644 --- a/C3d/Include/surf_chamfer_surface.h +++ b/C3d/Include/surf_chamfer_surface.h @@ -110,13 +110,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Cделать копию элемента. \en Make a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Cделать копию элемента. \en Make a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли объект копией. \en Whether the object is a copy. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Cделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Move. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Move. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties &properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties &properties ); // \ru Записать свойства объекта. \en Set properties of the object. diff --git a/C3d/Include/surf_channel_surface.h b/C3d/Include/surf_channel_surface.h index fb42c21..bd15a88 100644 --- a/C3d/Include/surf_channel_surface.h +++ b/C3d/Include/surf_channel_surface.h @@ -163,7 +163,7 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли объект копией. \en Whether the object is a copy. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. diff --git a/C3d/Include/surf_cone_surface.h b/C3d/Include/surf_cone_surface.h index a82b0a9..b4b7baa 100644 --- a/C3d/Include/surf_cone_surface.h +++ b/C3d/Include/surf_cone_surface.h @@ -174,10 +174,10 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA () const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual ( const MbSpaceItem & init ); // \ru Сделать равным. \en Make equal. - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -279,7 +279,7 @@ public: virtual MbCurve3D * CurveUV( const MbLineSegment &, bool bApprox = true ) const; // \ru Пространственная копия линии по параметрической линии. \en Spatial copy of line by parametric line. // \ru Найти все проекции точки на поверхность вдоль вектора в любом из двух направлений. \en Find all a point projection onto the surface along a vector in either of two directions. - virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Пересечение с кривой. \en Intersection with curve. virtual void CurveIntersection( const MbCurve3D & curv, SArray & uv, SArray & tt, bool ext0, bool ext, bool touchInclude = false ) const; @@ -287,7 +287,7 @@ public: // \ru Дать мимнимально различимую величину параметра. \en Get the minimum distinguishable value of parameter. virtual double GetParamPrice() const; // \ru Построить касательные и нормальные плейсменты конструктивных плоскостей. \en Construct tangent and normal placements of constructive planes. - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; virtual bool GetCylinderAxis( MbAxis3D & axis ) const ; // \ru Дать ось вращения для поверхности. \en Get a rotation axis of a surface. virtual bool GetCenterLines( std::vector & clCurves ) const; // \ru Дать осевые (центральные) линии для поверхности. \en Get center lines of a surface. @@ -335,7 +335,7 @@ public: /** \ru \name Функции элементарных поверхностей \en \name Functions of elementary surfaces \{ */ - virtual bool GetPointProjection( const MbCartPoint3D & p, bool init, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual bool GetPointProjection( const MbCartPoint3D & p, bool init, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; /** \} */ /** \ru \name Функции конической поверхности \en \name Functions of conical surface diff --git a/C3d/Include/surf_coons_surface.h b/C3d/Include/surf_coons_surface.h index a932b25..125faea 100644 --- a/C3d/Include/surf_coons_surface.h +++ b/C3d/Include/surf_coons_surface.h @@ -194,13 +194,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Cделать копию элемента \en Make a copy of element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Cделать копию элемента \en Make a copy of element virtual bool IsSame( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли объект копией. \en Whether the object is a copy. virtual bool SetEqual( const MbSpaceItem & init ); // \ru Сделать равным \en Make equal virtual bool IsSimilar( const MbSpaceItem & init ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта \en Set properties of the object @@ -352,8 +352,8 @@ public: \en Index of the curve. \~ \param[out] sense - \ru Флаг совпадения направленности кривой с рисунком, приведенным выше. \en Flag that indicates the coincidence of the curve with the picture shown above.\~ - \return - \ru Указатель на кривую или c3d_null. - \en Pointer to the curve or c3d_null. \~ + \return - \ru Указатель на кривую или nullptr. + \en Pointer to the curve or nullptr. \~ */ const MbCurve3D * GetExactCurve( size_t k, bool & sense ) const; @@ -473,7 +473,7 @@ inline const MbCurve3D * MbCoonsPatchSurface::GetCurve( size_t ind ) const case 2 : { return curve2; } case 3 : { return curve3; } } - return c3d_null; + return nullptr; } diff --git a/C3d/Include/surf_corner_surface.h b/C3d/Include/surf_corner_surface.h index ccadc19..e7f9ec3 100644 --- a/C3d/Include/surf_corner_surface.h +++ b/C3d/Include/surf_corner_surface.h @@ -90,13 +90,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Cделать копию элемента \en Make a copy of element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Cделать копию элемента \en Make a copy of element virtual bool IsSame( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли объект копией. \en Whether the object is a copy. virtual bool SetEqual( const MbSpaceItem & init ); // \ru Сделать равным \en Make equal virtual bool IsSimilar( const MbSpaceItem & init ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void CalculateSurfaceWire( const MbStepData & stepData, size_t beg, MbMesh & mesh, size_t uMeshCount = c3d::WIRE_MAX, size_t vMeshCount = c3d::WIRE_MAX ) const; @@ -307,7 +307,7 @@ inline const MbCurve3D * MbCornerSurface::GetCurve( size_t ind ) const case 1 : { return curve1; } case 2 : { return curve2; } } - return c3d_null; + return nullptr; } diff --git a/C3d/Include/surf_cover_surface.h b/C3d/Include/surf_cover_surface.h index 6bba67a..54c7b87 100644 --- a/C3d/Include/surf_cover_surface.h +++ b/C3d/Include/surf_cover_surface.h @@ -97,13 +97,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Cделать копию элемента \en Make a copy of element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Cделать копию элемента \en Make a copy of element virtual bool IsSame( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли объект копией. \en Whether the object is a copy. virtual bool SetEqual( const MbSpaceItem & init ); // \ru Сделать равным \en Make equal virtual bool IsSimilar( const MbSpaceItem & init ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object @@ -240,8 +240,8 @@ public: \en Index of the curve. \~ \param[out] sense - \ru Флаг совпадения направленности кривой с рисунком, приведенным выше. \en Flag that indicates the coincidence of the curve with the picture shown above.\~ - \return - \ru Указатель на кривую или c3d_null. - \en Pointer to the curve or c3d_null. \~ + \return - \ru Указатель на кривую или nullptr. + \en Pointer to the curve or nullptr. \~ */ const MbCurve3D * GetExactCurve( size_t k, bool &sense ) const; @@ -295,7 +295,7 @@ inline const MbCurve3D * MbCoverSurface::GetCurve( size_t ind ) const case 2 : { return curve2; } case 3 : { return curve3; } } - return c3d_null; + return nullptr; } diff --git a/C3d/Include/surf_curve_bounded_surface.h b/C3d/Include/surf_curve_bounded_surface.h index 4d240e5..de3cf3d 100644 --- a/C3d/Include/surf_curve_bounded_surface.h +++ b/C3d/Include/surf_curve_bounded_surface.h @@ -120,7 +120,7 @@ public : /// \ru Конструктор для поверхности c габаритом при чтении грани. \en Constructor for surface with bounding box at face reading. MbCurveBoundedSurface( MbSurface & initSurface, c3d::PlaneContoursSPtrVector & initCurves, MbCube & gab ); /// \ru Конструктор по контурам, берет за базовую поверхность поверхность первого контура. \en Constructor by contours, uses the surface of first contour as base surface. - MbCurveBoundedSurface( MbContourOnSurface & init1, MbContourOnSurface * init2 = c3d_null ); + MbCurveBoundedSurface( MbContourOnSurface & init1, MbContourOnSurface * init2 = nullptr ); /// \ru Конструктор-копия на новую базовую поверхность. \en Copy-constructor for new base surface. MbCurveBoundedSurface( const MbCurveBoundedSurface & init, MbSurface & newBaseSurface, bool calculateGabarit = true ); @@ -141,13 +141,13 @@ public : \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли объект копией. \en Whether the object is a copy. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual double DistanceToPoint( const MbCartPoint3D & ) const; // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. virtual void Refresh(); // \ru Сбросить все временные данные. \en Reset all temporary data. virtual void CalculateMesh( const MbStepData & stepData, const MbFormNote & note, MbMesh & mesh ) const; // \ru Построить полигональную копию mesh. \en Build polygonal copy mesh. @@ -306,9 +306,9 @@ public : size_t SegmentIntersection( const MbCurve & pCurve, SArray & curveParams, double epsilon = Math::metricEpsilon ) const; // \ru Найти ближайшую проекцию точки на поверхность. \en Find the nearest projection of a point onto the surface. - virtual bool NearPointProjection( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection onto the surface. + virtual bool NearPointProjection( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection onto the surface. // \ru Найти все проекции точки на поверхность вдоль вектора в любом из двух направлений. \en Find all a point projection onto the surface along a vector in either of two directions. - virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Вce точки пересечения поверхности и кривой. \en All the points of intersection of a surface and a curve. virtual void CurveIntersection( const MbCurve3D & curv, SArray & uv, SArray & tt, bool ext0, bool ext, bool touchInclude = false ) const; @@ -324,7 +324,7 @@ public : virtual bool GetMatrixToSurface( const MbSurface & surf, MbMatrix & matr, VERSION version, double precision = METRIC_PRECISION ) const; virtual ThreeStates Salient() const; // \ru Выпуклая ли поверхность. \en Whether the surface is convex. // \ru Построить касательные и нормальные плейсменты конструктивных плоскостей. \en Construct tangent and normal placements of constructive planes. - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; // \ru Определение разбивки параметрической области поверхности вертикалями и горизонталями. \en Determine splitting of parametric region of surface by vertical and horizontal lines. virtual void GetTesselation( const MbStepData & stepData, @@ -500,7 +500,7 @@ public : \details \ru Дать контур, ограничивающий поверхность, по его индексу. С проверкой индекса. \en Get contour bounding surface by its index. With index checking. \~ */ - const MbContourOnSurface * GetCurve ( size_t ind ) const { return ( ind < curves.Count() ) ? curves[ind] : c3d_null; } + const MbContourOnSurface * GetCurve ( size_t ind ) const { return ( ind < curves.Count() ) ? curves[ind] : nullptr; } /** \brief \ru Дать контур, ограничивающий поверхность, по его индексу. \en Get contour bounding surface by its index. \~ \details \ru Дать контур, ограничивающий поверхность, по его индексу. Без проверки индекса. @@ -514,7 +514,7 @@ public : \details \ru Дать контур, ограничивающий поверхность, по его индексу. С проверкой индекса. \en Get contour bounding surface by its index. With index checking. \~ */ - MbContourOnSurface * SetCurve ( size_t ind ) { return ( ind < curves.Count() ) ? curves[ind] : c3d_null; } + MbContourOnSurface * SetCurve ( size_t ind ) { return ( ind < curves.Count() ) ? curves[ind] : nullptr; } /** \brief \ru Дать контур, ограничивающий поверхность, по его индексу. \en Get contour bounding surface by its index. \~ \details \ru Дать контур, ограничивающий поверхность, по его индексу. Без проверки индекса. diff --git a/C3d/Include/surf_cylinder_surface.h b/C3d/Include/surf_cylinder_surface.h index cb5b354..0fbe2aa 100644 --- a/C3d/Include/surf_cylinder_surface.h +++ b/C3d/Include/surf_cylinder_surface.h @@ -151,10 +151,10 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -254,7 +254,7 @@ public: virtual MbCurve3D * CurveUV( const MbLineSegment &, bool bApprox = true ) const; // \ru Пространственная копия линии по параметрической линии. \en Spatial copy of line by parametric line. // \ru Найти все проекции точки на поверхность вдоль вектора в любом из двух направлений. \en Find all a point projection onto the surface along a vector in either of two directions. - virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Пересечение с кривой. \en Intersection with curve. virtual void CurveIntersection( const MbCurve3D & curv, SArray & uv, SArray & tt, bool ext0, bool ext, bool touchInclude = false ) const; @@ -273,7 +273,7 @@ public: // \ru Дать мимнимально различимую величину параметра. \en Get the minimum distinguishable value of parameter. virtual double GetParamPrice() const; // \ru Построить касательные и нормальные плейсменты конструктивных плоскостей. \en Construct tangent and normal placements of constructive planes. - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; virtual bool GetCylinderAxis( MbAxis3D & axis ) const; // \ru Дать ось вращения для поверхности. \en Get a rotation axis of a surface. virtual bool GetCenterLines( std::vector & clCurves ) const; // \ru Дать осевые (центральные) линии для поверхности. \en Get center lines of a surface. @@ -318,7 +318,7 @@ public: /** \ru \name Функции элементарных поверхностей \en \name Functions of elementary surfaces \{ */ - virtual bool GetPointProjection( const MbCartPoint3D & p, bool init, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual bool GetPointProjection( const MbCartPoint3D & p, bool init, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; /** \} */ /** \ru \name Функции цилиндрической поверхности \en \name Functions of the cylindrical surface diff --git a/C3d/Include/surf_elementary_surface.h b/C3d/Include/surf_elementary_surface.h index ba593e9..6c1b07a 100644 --- a/C3d/Include/surf_elementary_surface.h +++ b/C3d/Include/surf_elementary_surface.h @@ -59,12 +59,12 @@ public: \{ */ virtual MbeSpaceType IsA () const = 0; // \ru Тип элемента. \en A type of element. virtual MbeSpaceType Type() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const = 0; // \ru Являются ли объекты равными. \en Determine whether objects are equal. virtual bool SetEqual ( const MbSpaceItem & ) = 0; // \ru Сделать равным. \en Make equal. - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D & to, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Move. - virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D & to, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Move. + virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual double DistanceToPoint( const MbCartPoint3D & to ) const; // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. virtual void GetProperties( MbProperties & properties ) = 0; // \ru Выдать свойства объекта. \en Get properties of the object. @@ -140,7 +140,7 @@ public: // \ru Ближайшая проекция точки на поверхность \en Nearest point projection onto the surface virtual MbeNewtonResult PointProjectionNewton( const MbCartPoint3D & p, size_t iterLimit, double & u, double & v, bool ext ) const; // \ru Функция для нахождения проекции точки на поверхность. \en Function for searching the point projection onto the surface. - virtual bool NearPointProjection( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection onto the surface. + virtual bool NearPointProjection( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection onto the surface. virtual bool IsRectangular() const; // \ru Если true производные по u и v ортогональны. \en If true, then derivatives by u and v are orthogonal. virtual void SetLimit( double u1, double v1, double u2, double v2 ) = 0; @@ -168,7 +168,7 @@ public: \return \ru true в случае успеха операции \en True if the operation succeeded \~ */ - virtual bool GetPointProjection( const MbCartPoint3D & p, bool init, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const = 0; + virtual bool GetPointProjection( const MbCartPoint3D & p, bool init, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const = 0; // Дать приращение параметра u и параметра v, соответствующее единичной длине в пространстве. \en Get increment of parameters, corresponding to the unit length in space. virtual void GetParamsToUnit( double u, double v, double & uParam, double & vParam ) const; diff --git a/C3d/Include/surf_elevation_surface.h b/C3d/Include/surf_elevation_surface.h index df975a1..e32f011 100644 --- a/C3d/Include/surf_elevation_surface.h +++ b/C3d/Include/surf_elevation_surface.h @@ -38,7 +38,7 @@ const VERSION ELEVATION_SURFACE_VERSION1 = 0x0F001003L; ///< \ru Расчёт т // --- class MATH_CLASS MbElevationSurface : public MbLoftedSurface { private: - MbCurve3D * spine; ///< \ru Направляющая кривая (не c3d_null). \en Guide curve (not c3d_null). + MbCurve3D * spine; ///< \ru Направляющая кривая (не nullptr). \en Guide curve (not nullptr). RPArray mSpines; ///< \ru Множество указателей на направляющие кривые (на основе spine). \en Set of pointers to guide curves (based on 'spine'). bool isSimToEvol; ///< \ru Способ расчёта точек на поверхности. \en Way of calculating of points on the surface. @@ -102,13 +102,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты \en Whether the objects are equal virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void Refresh (); virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object @@ -187,13 +187,13 @@ public: virtual void ChangeCarrier( const MbSpaceItem & item, MbSpaceItem & init ); // \ru Изменение носителя \en Changing of carrier // \ru Построить касательные и нормальные плейсменты конструктивных плоскостей \en Construct tangent and normal placements of constructive planes - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; virtual size_t GetVMeshCount() const; // \ru Выдать количество полигонов по v \en Get the count of polygons by v /// \ru Вернуть направляющую кривую. \en Return spine (guide) curve. - const MbCurve3D & GetSpineCurve() const { C3D_ASSERT( spine != c3d_null ); return *spine; } + const MbCurve3D & GetSpineCurve() const { C3D_ASSERT( spine != nullptr ); return *spine; } /// \ru Вернуть направляющую кривую. \en Return spine (guide) curve. bool IsSimilarToEvolution() const { return isSimToEvol; } @@ -315,8 +315,8 @@ inline void MbElevationSurface::CheckParam( double & u, double & v, bool ext ) c \en Center of mass of profile curve. \~ \param[in,out] ct - \ru Искомый параметр. \en Required parameter. \~ - \param[in,out] tau - \ru Производная направляющей в точке с координатой ct. Если в функцию передать c3d_null, производная не вычисляется. - \en Derivative of guide curve at point with 'ct' coordinate. If giving c3d_null to function, then derivative isn't calculated. \~ + \param[in,out] tau - \ru Производная направляющей в точке с координатой ct. Если в функцию передать nullptr, производная не вычисляется. + \en Derivative of guide curve at point with 'ct' coordinate. If giving nullptr to function, then derivative isn't calculated. \~ \return \ru true - если направляющая пересекается с плоскостью профиля, false - если не пересекается. \en True - if guide curve intersects with plane of profile, false - if not intersects. \~ \ingroup Algorithms_3D @@ -341,8 +341,8 @@ bool CreateElevationParam( const MbCurve3D & crvThis, const MbCurve3D & spine, \en The spine (guide) curve. \~ \param[in,out] vParams - \ru Множество параметров. \en Set of parameters. \~ - \param[in,out] tiePnts - \ru Множество центров масс профильных кривых. Не заполняется, если в функцию передать c3d_null. - \en Set of centers of mass of profile curves. If giving c3d_null to function, then it isn't filled. \~ + \param[in,out] tiePnts - \ru Множество центров масс профильных кривых. Не заполняется, если в функцию передать nullptr. + \en Set of centers of mass of profile curves. If giving nullptr to function, then it isn't filled. \~ \return \ru true - если массив параметров успешно создан. \en True - if the array of parameters successfully created. \~ \ingroup Algorithms_3D diff --git a/C3d/Include/surf_evolution_surface.h b/C3d/Include/surf_evolution_surface.h index 858c429..617084b 100644 --- a/C3d/Include/surf_evolution_surface.h +++ b/C3d/Include/surf_evolution_surface.h @@ -140,13 +140,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar ( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Move. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Move. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -233,7 +233,7 @@ public: virtual MbCurve3D * CurveV( double u, MbRect1D *pRgn, bool bApprox = true ) const; // \ru Пространственная копия линии u = const. \en Spatial copy of 'u = const'-line. // \ru Построить касательные и нормальные плейсменты конструктивных плоскостей. \en Construct tangent and normal placements of constructive planes. - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; // \ru Подобные ли поверхности для объединения (слива). \en Whether the surfaces to union (joining) are similar. virtual bool IsSimilarToSurface( const MbSurface & surf, VERSION version, double precision = METRIC_PRECISION ) const; diff --git a/C3d/Include/surf_exaction_surface.h b/C3d/Include/surf_exaction_surface.h index 257f5cb..cebc1b1 100644 --- a/C3d/Include/surf_exaction_surface.h +++ b/C3d/Include/surf_exaction_surface.h @@ -96,13 +96,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равными. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Move. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Move. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта. \en Set properties of the object. diff --git a/C3d/Include/surf_expansion_surface.h b/C3d/Include/surf_expansion_surface.h index b009f7f..913e1ec 100644 --- a/C3d/Include/surf_expansion_surface.h +++ b/C3d/Include/surf_expansion_surface.h @@ -38,7 +38,7 @@ class MATH_CLASS MbExpansionSurface : public MbSweptSurface { private: MbCurve3D * spine; ///< \ru Направляющая кривая. \en Spine (guide) curve. - MbCurve3D * brink; ///< \ru Вторая образующая кривая (первой является curve, может быть c3d_null). \en The second generating curve ('curve' is first one, may be c3d_null). + MbCurve3D * brink; ///< \ru Вторая образующая кривая (первой является curve, может быть nullptr). \en The second generating curve ('curve' is first one, may be nullptr). double tmin; ///< \ru Начальный параметр brink. \en Start parameter of 'brink'. double dt; ///< \ru Производная параметра кривой brink по параметру u (dt * (u - umin) = t_brink - tmin_brink). \en Derivative of parameter of 'brink' curve by u parameter (dt * (u - umin) = t_brink - tmin_brink). MbCartPoint3D origin; ///< \ru Начало образующей. \en Begin of gravity of generating curve. @@ -62,7 +62,7 @@ public: \en Second generating curve \~ */ MbExpansionSurface( const MbCurve3D & cr, const MbCurve3D & sp, bool sameCurve, bool sameSpine, - const MbCurve3D * sl = c3d_null ); + const MbCurve3D * sl = nullptr ); /** \brief \ru Конструктор по точке, образующей и направляющей. \en Constructor by point, generating curve and guide curve. \~ @@ -101,13 +101,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Move. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Move. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -188,7 +188,7 @@ public: virtual MbCurve3D * CurveV( double u, MbRect1D * pRgn, bool bApprox = true ) const; // \ru Пространственная копия линии u = const. \en Spatial copy of 'u = const'-line. // \ru Построить касательные и нормальные плейсменты конструктивных плоскостей. \en Construct tangent and normal placements of constructive planes. - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; // \ru Определение разбивки параметрической области поверхности вертикалями и горизонталями. \en Determine splitting of parametric region of surface by vertical and horizontal lines. virtual void GetTesselation( const MbStepData & stepData, @@ -248,7 +248,7 @@ IMPL_PERSISTENT_OPS( MbExpansionSurface ) // --- inline double MbExpansionSurface::BrinkParameterFrom( const double & u ) const { double t = u; - if ( brink != c3d_null ) + if ( brink != nullptr ) t = tmin + (u - umin) * dt; return t; } @@ -259,7 +259,7 @@ inline double MbExpansionSurface::BrinkParameterFrom( const double & u ) const { // --- inline double MbExpansionSurface::BrinkParameterInto( const double & t ) const { double u = t; - if ( brink != c3d_null ) { + if ( brink != nullptr ) { double du = (::fabs(dt) > EXTENT_EQUAL) ? 1.0 / dt : 1.0; u = umin + (t - tmin) * du; } diff --git a/C3d/Include/surf_exploration_surface.h b/C3d/Include/surf_exploration_surface.h index 404c8b1..88dff1e 100644 --- a/C3d/Include/surf_exploration_surface.h +++ b/C3d/Include/surf_exploration_surface.h @@ -75,13 +75,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar ( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Move. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Move. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта. \en Set properties of the object. diff --git a/C3d/Include/surf_extrusion_surface.h b/C3d/Include/surf_extrusion_surface.h index 7030984..8beaa37 100644 --- a/C3d/Include/surf_extrusion_surface.h +++ b/C3d/Include/surf_extrusion_surface.h @@ -76,13 +76,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Move. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Move. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -163,7 +163,7 @@ public: virtual ThreeStates Salient() const; // \ru Выпуклая ли поверхность. \en Whether a surface is convex. // \ru Проекция точки на поверхность. \en The point projection onto the surface. - virtual bool NearPointProjection ( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection onto the surface. + virtual bool NearPointProjection ( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection onto the surface. // \ru Пересечение с кривой. \en Intersection with curve. virtual void CurveIntersection( const MbCurve3D & curv, SArray & uv, SArray & tt, bool ext0, bool ext, bool touchInclude = false ) const; @@ -172,7 +172,7 @@ public: virtual void CalculateLocalGabarit( const MbMatrix3D &, MbCube & ) const; // \ru Рассчитать габарит относительно л.с.к. \en Calculate bounding box relative to the local coordinate system. // \ru Построить касательные и нормальные плейсменты конструктивных плоскостей. \en Construct tangent and normal placements of constructive planes. - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; virtual bool GetCylinderAxis( MbAxis3D & axis ) const; // \ru Дать ось вращения для поверхности. \en Get a rotation axis of a surface. virtual bool GetCenterLines( std::vector & clCurves ) const; // \ru Дать осевые (центральные) линии для поверхности. \en Get center lines of a surface. diff --git a/C3d/Include/surf_fillet_surface.h b/C3d/Include/surf_fillet_surface.h index 444352b..c19a7d8 100644 --- a/C3d/Include/surf_fillet_surface.h +++ b/C3d/Include/surf_fillet_surface.h @@ -46,7 +46,7 @@ class MATH_CLASS MbFunction; */// --- class MATH_CLASS MbFilletSurface : public MbSmoothSurface { protected: - MbCurve3D * curve0; ///< \ru Кривая пересечения касательных к поверхностям - всегда не c3d_null. \en Intersection curve of tangents to surfaces - always not c3d_null. + MbCurve3D * curve0; ///< \ru Кривая пересечения касательных к поверхностям - всегда не nullptr. \en Intersection curve of tangents to surfaces - always not nullptr. MbFunction * weights0; ///< \ru Функция веса точек средней кривой curve0. \en Function of weight of points of curve0 mid-curve. double conic; ///< \ru Коэффициент формы, изменяется от 0.05 до 0.95, определяет вес точек кривой curve0. \en Coefficient of shape is changed between 0.05 and 0.95 and determines weight of points of curve0 curve. bool even; ///< \ru Равномерная параметризация по дуге или нет. \en Whether arc length parameterization is uniform or not. @@ -181,13 +181,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Move. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Move. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties &properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties &properties ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -284,12 +284,12 @@ public: // \ru Проекции точки на поверхность. \en The point projections onto the surface. virtual MbeNewtonResult PointProjectionNewton( const MbCartPoint3D & p, size_t iterLimit, double & u, double & v, bool ext ) const; // \ru Функция для нахождения проекции точки на поверхность. \en Function for searching the point projection onto the surface. - virtual bool NearPointProjection ( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection onto the surface. + virtual bool NearPointProjection ( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection onto the surface. virtual double GetFilletRadius( const MbCartPoint3D & p ) const; // \ru Является ли поверхность скруглением. \en Whether the surface is fillet. virtual double GetFilletRadius( double u ) const; // \ru Дать радиус скругления по первому параметру. \en Get fillet radius if the surface is fillet. // \ru Построить касательные и нормальные плейсменты конструктивных плоскостей. \en Construct tangent and normal placements of constructive planes. - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; virtual bool GetCylinderAxis( MbAxis3D &axis ) const; // \ru Дать ось вращения для поверхности. \en Get a rotation axis of a surface. // \ru Подобные ли поверхности для объединения (слива). \en Whether the surfaces to union (joining) are similar. diff --git a/C3d/Include/surf_gregory_surface.h b/C3d/Include/surf_gregory_surface.h index 8b10413..875cc39 100644 --- a/C3d/Include/surf_gregory_surface.h +++ b/C3d/Include/surf_gregory_surface.h @@ -52,7 +52,7 @@ public: \param[in] initContour - \ru Контур. \en The contour. \~ */ - MbGregorySurface( const MbContour3D & initContour, const SArray * conj = c3d_null ); + MbGregorySurface( const MbContour3D & initContour, const SArray * conj = nullptr ); protected: /// \ru Конструктор-копия. \en Copy constructor. MbGregorySurface( const MbGregorySurface &, MbRegDuplicate * ); @@ -66,13 +66,13 @@ public: \en \name Common functions of a geometric object. \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Make a copy of element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Make a copy of element. virtual bool IsSame( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли объект копией. \en Whether the object is a copy. virtual bool SetEqual( const MbSpaceItem & init ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & init ) const; // \ru Являются ли объекты подобными. \en Whether the objects are similar. - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix - virtual void Move( const MbVector3D &to, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Translation - virtual void Rotate( const MbAxis3D &axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix + virtual void Move( const MbVector3D &to, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Translation + virtual void Rotate( const MbAxis3D &axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis virtual void Refresh(); // \ru Сбросить все временные данные. \en Flush all the temporary data. virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта. \en Get properties of the object. diff --git a/C3d/Include/surf_grid_surface.h b/C3d/Include/surf_grid_surface.h index 8e9cb60..fc69ed8 100644 --- a/C3d/Include/surf_grid_surface.h +++ b/C3d/Include/surf_grid_surface.h @@ -193,13 +193,13 @@ public: \{ */ // \ru Общие функции геометрического объекта \en Common functions of a geometric object virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Cделать копию элемента \en Make a copy of element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Cделать копию элемента \en Make a copy of element virtual bool IsSame( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; virtual bool SetEqual( const MbSpaceItem &init ); // \ru Сделать равным \en Make equal virtual bool IsSimilar( const MbSpaceItem &init ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar - virtual void Transform( const MbMatrix3D &matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D &to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D &axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D &to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D &axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual double DistanceToPoint( const MbCartPoint3D & ) const; // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. virtual void GetProperties( MbProperties &properties ); // \ru Выдать свойства объекта \en Get properties of the object @@ -280,9 +280,9 @@ public: virtual size_t CurveClassification( const MbCurve & curve, SArray & tcurv, SArray & dir ) const; // \ru Найти ближайшую проекцию точки на поверхность. \en Find the nearest projection of a point onto the surface. - virtual bool NearPointProjection( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection onto the surface. + virtual bool NearPointProjection( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection onto the surface. // \ru Найти все проекции точки на поверхность вдоль вектора в любом из двух направлений. \en Find all a point projection onto the surface along a vector in either of two directions. - virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Вce точки пересечения поверхности и кривой. \en All the points of intersection of a surface and a curve. virtual void CurveIntersection( const MbCurve3D & curv, SArray & uv, SArray & tt, bool ext0, bool ext, bool touchInclude = false ) const; @@ -341,7 +341,7 @@ public: , const Triangles & _triangles , const Bounds & _bounds ) { - MbGridSurface * surface = c3d_null; + MbGridSurface * surface = nullptr; const size_t itemsCnt = _params.size(); diff --git a/C3d/Include/surf_join_surface.h b/C3d/Include/surf_join_surface.h index 57396fa..8468310 100644 --- a/C3d/Include/surf_join_surface.h +++ b/C3d/Include/surf_join_surface.h @@ -219,12 +219,12 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными \en Determine whether objects are equal virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта \en Set properties of the object diff --git a/C3d/Include/surf_lofted_surface.h b/C3d/Include/surf_lofted_surface.h index cb183fa..0dbc82b 100644 --- a/C3d/Include/surf_lofted_surface.h +++ b/C3d/Include/surf_lofted_surface.h @@ -202,13 +202,13 @@ public: \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element virtual MbeSpaceType Type() const; // \ru Тип элемента \en A type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента \en Create a copy of the element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента \en Create a copy of the element virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты \en Whether the objects are equal virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным \en Make equal virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void Refresh(); virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object @@ -303,7 +303,7 @@ public: virtual bool IsSpecialSimilarToSurface( const MbSurface & surf, VERSION version, double precision = METRIC_PRECISION ) const; // \ru Специальный случай \en Special case // \ru Построить касательные и нормальные плейсменты конструктивных плоскостей \en Construct tangent and normal placements of constructive planes - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; virtual bool GetCylinderAxis( MbAxis3D & axis ) const; // \ru Дать ось вращения для поверхности \en Get a rotation axis of a surface @@ -322,9 +322,9 @@ public: SArray & uu, SArray & vv ) const; // \ru Найти ближайшую проекцию точки на поверхность или ее продолжение по заданному начальному приближению. \en Find the neares projection of a point onto the surface. - virtual bool NearPointProjection ( const MbCartPoint3D & pnt, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual bool NearPointProjection ( const MbCartPoint3D & pnt, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Найти все проекции точки на поверхность вдоль вектора в любом из двух направлений. \en Find all a point projection onto the surface along a vector in either of two directions. - virtual void DirectPointProjection( const MbCartPoint3D & pnt, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual void DirectPointProjection( const MbCartPoint3D & pnt, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = nullptr ) const; virtual bool IsLineU() const; // \ru Если true все производные по U выше первой равны нулю \en If true, then all the derivatives by U higher the first one are equal to zero virtual bool IsLineV() const; // \ru Если true все производные по V выше первой равны нулю \en If true, then all the derivatives by V higher the first one are equal to zero @@ -350,7 +350,7 @@ public: \return \ru Константная кривая. \en The constant curve. \~ */ - const MbCurve3D * GetCurve( ptrdiff_t ind ) const { return (ind >= 0 && ind < (ptrdiff_t)uCurves.Count()) ? uCurves[ind] : c3d_null; } + const MbCurve3D * GetCurve( ptrdiff_t ind ) const { return (ind >= 0 && ind < (ptrdiff_t)uCurves.Count()) ? uCurves[ind] : nullptr; } /** \brief \ru Получить кривую для редактирования по номеру. \en Get curve for editing by an index. \~ \details \ru Получить кривую для редактирования по номеру. \n @@ -360,7 +360,7 @@ public: \return \ru Кривая. \en A curve. \~ */ - MbCurve3D * SetCurve( ptrdiff_t ind ) { return (ind >= 0 && ind < (ptrdiff_t)uCurves.Count()) ? uCurves[ind] : c3d_null; } + MbCurve3D * SetCurve( ptrdiff_t ind ) { return (ind >= 0 && ind < (ptrdiff_t)uCurves.Count()) ? uCurves[ind] : nullptr; } /** \brief \ru Получить параметр по номеру. \en Get parameter by an index. \~ \details \ru Получить параметр по номеру.\n @@ -691,8 +691,8 @@ inline void MbLoftedSurface::ParamThird( double t1, double t2, double * tLoft ) \en Whether the surface is closed by parameter v. \~ \param[in,out] vParams - \ru Множество параметров. \en Set of parameters. \~ - \param[in,out] tiePnts - \ru Множество центров масс профильных кривых. Не заполняется, если в функцию передать c3d_null. - \en Set of centers of mass of profile curves. If giving c3d_null to function, then it isn't filled. \~ + \param[in,out] tiePnts - \ru Множество центров масс профильных кривых. Не заполняется, если в функцию передать nullptr. + \en Set of centers of mass of profile curves. If giving nullptr to function, then it isn't filled. \~ \param[in] version - \ru Версия. \en Version. \~ \return \ru true - если массив параметров успешно создан. diff --git a/C3d/Include/surf_mesh_surface.h b/C3d/Include/surf_mesh_surface.h index bbe7020..eadf8e4 100644 --- a/C3d/Include/surf_mesh_surface.h +++ b/C3d/Include/surf_mesh_surface.h @@ -197,7 +197,7 @@ public: */ MbMeshSurface( RPArray & initU, RPArray & initV, bool uClosed, bool vClosed, - bool same, const SArray * types = c3d_null, + bool same, const SArray * types = nullptr, MbeMeshSurfaceVersion vers = msv_Ver3 ); /** \brief \ru Конструктор поверхности. \en Constructor of surface. \~ @@ -263,7 +263,7 @@ public: MbMeshSurface( RPArray & initU, RPArray & initV, SArray & parsU, SArray & parsV, bool uClosed, bool vClosed, - bool same, const SArray * types = c3d_null, + bool same, const SArray * types = nullptr, MbeMeshSurfaceVersion vers = msv_Ver3 ); /** \brief \ru Конструктор поверхности. @@ -360,13 +360,13 @@ public: \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element virtual MbeSpaceType Type() const; // \ru Групповой тип элемента. \en Group element type. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Cделать копию элемента \en Make a copy of element + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Cделать копию элемента \en Make a copy of element virtual bool IsSame( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли объект копией. \en Whether the object is a copy. virtual bool SetEqual( const MbSpaceItem & init ); // \ru Сделать равным \en Make equal virtual bool IsSimilar( const MbSpaceItem & init ) const; // \ru Являются ли объекты подобными \en Whether the objects are similar - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move( const MbVector3D &to, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate( const MbAxis3D &axis, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate around an axis + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move( const MbVector3D &to, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate( const MbAxis3D &axis, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate around an axis virtual void Refresh(); // \ru Сбросить все временные данные \en Flush all the temporary data virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта \en Get properties of the object @@ -471,9 +471,9 @@ public: virtual bool IsLineV() const; // \ru Если true все производные по V выше первой равны нулю \en If true, then all the derivatives by V higher the first one are equal to zero // \ru Найти ближайшую проекцию точки на поверхность или ее продолжение по заданному начальному приближению. \en Find the neares projection of a point onto the surface. - virtual bool NearPointProjection ( const MbCartPoint3D & pnt, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual bool NearPointProjection ( const MbCartPoint3D & pnt, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Найти все проекции точки на поверхность вдоль вектора в любом из двух направлений. \en Find all a point projection onto the surface along a vector in either of two directions. - virtual void DirectPointProjection( const MbCartPoint3D & pnt, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual void DirectPointProjection( const MbCartPoint3D & pnt, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = nullptr ) const; virtual MbCurve3D * CurveU( double v, MbRect1D * pRgn, bool bApprox = true ) const; // \ru Пространственная копия линии v = const. \en Spatial copy of 'v = const'-line. virtual MbCurve3D * CurveV( double u, MbRect1D * pRgn, bool bApprox = true ) const; // \ru Пространственная копия линии u = const. \en Spatial copy of 'u = const'-line. @@ -501,20 +501,20 @@ public: \en Get curve with 'ind' index from first family. \n \~ \param[in] ind - \ru Номер запрашиваемой кривой в массиве. \en Index of required curve in array. \~ - \return \ru Кривая или c3d_null, если значение ind выходит за диапазон возможных индексов массиве кривых. - \en Curve or c3d_null if value of 'ind' is out of range of possible indices of array of curves. \~ + \return \ru Кривая или nullptr, если значение ind выходит за диапазон возможных индексов массиве кривых. + \en Curve or nullptr if value of 'ind' is out of range of possible indices of array of curves. \~ */ - const MbCurve3D * GetUCurve( size_t ind ) const { return ( ind < uCurves.Count()) ? uCurves[ind] : c3d_null; } + const MbCurve3D * GetUCurve( size_t ind ) const { return ( ind < uCurves.Count()) ? uCurves[ind] : nullptr; } /** \brief \ru Получить кривую с индексом ind из второго семейства. \en Get curve with 'ind' index from second family. \~ \details \ru Получить кривую с индексом ind из второго семейства. \n \en Get curve with 'ind' index from second family. \n \~ \param[in] ind - \ru Номер запрашиваемой кривой в массиве. \en Index of required curve in array. \~ - \return \ru Кривая или c3d_null, если значение ind выходит за диапазон возможных индексов массиве кривых. - \en Curve or c3d_null if value of 'ind' is out of range of possible indices of array of curves. \~ + \return \ru Кривая или nullptr, если значение ind выходит за диапазон возможных индексов массиве кривых. + \en Curve or nullptr if value of 'ind' is out of range of possible indices of array of curves. \~ */ - const MbCurve3D * GetVCurve( size_t ind ) const { return ( ind < vCurves.Count()) ? vCurves[ind] : c3d_null; } + const MbCurve3D * GetVCurve( size_t ind ) const { return ( ind < vCurves.Count()) ? vCurves[ind] : nullptr; } /** \brief \ru Получить значение параметра, соответствующего кривой с индексом ind из первого семейства. \en Get value of parameter corresponding to curve with 'ind' index from first family. \~ \details \ru Получить значение параметра, соответствующего кривой с индексом ind из первого семейства.\n @@ -606,12 +606,15 @@ private: void PointOn( double & u, double & v, MbCartPoint3D & p, MbMeshSurfaceAuxiliaryData * ) const; // \ru Точка на поверхности \en Point on the surface // \ru Определить местные координаты области поверхности. \en Determine local coordinates of surface region. - void LocalCoordinate( double u, double v, double & ul, double & vl, size_t & i0,size_t & j0,size_t & i1, size_t & j1, MbMeshSurfaceAuxiliaryData * ucache = c3d_null ) const; + void LocalCoordinate( double u, double v, double & ul, double & vl, size_t & i0,size_t & j0,size_t & i1, size_t & j1, MbMeshSurfaceAuxiliaryData * ucache = nullptr ) const; void LocalCoordinate_v2( double u, double v, double & ul, double & vl, size_t & i0, size_t & j0, size_t & i1, size_t & j1, size_t ord, MbMeshSurfaceAuxiliaryData * ucache ) const; void LocalCoordinate_v4( double u, double v, size_t ordU, size_t ordV, MbMeshSurfaceAuxiliaryData * ucache ) const; // \ru Рассчитать параметры для границы патча. \en Calculate parameters for the patch boundary. void PatchBoundExplore_v4( const MbCurve3D * curve, const MbFunction * fn, double par, size_t bnd, MbeMatingType tp, MbCoonsPatchData & pd, ptrdiff_t ord ) const; + // \ru Вернуть изолинию на поверхности для указанного параметра. + MbCurve3D * CurveUV_v4( bool dirU, double sPar, MbRect1D * pRgn, bool bApprox ) const; // \ru Пространственная копия линии u(v) = const. \en Spatial copy of line u(v) = const. + // \ru Вычислить вспомогательные вектора производных вдоль U кривых патча. \en Calculate auxiliary vectors of derivatives along U curves of patch. void CalculateAlongU( const double & ul, const size_t & j0, const size_t & j1, MbMeshSurfaceAuxiliaryData * ucache ) const; @@ -773,7 +776,7 @@ private: void GeneratrixCurveExplore_v3( bool dirU, size_t ind, double t, MbCartPoint3D & p, MbVector3D & fir, MbVector3D & sec, MbVector3D & thir ) const; // \ru Инициализировать массивы расширения. \en Init expansion arrays. - void InitExtArrays( const bool (*adjPatch)[4] = c3d_null ); + void InitExtArrays( const bool (*adjPatch)[4] = nullptr ); /** \} */ @@ -816,7 +819,7 @@ inline void MbMeshSurface::CheckParams( double & u, double & v ) const // --- inline void MbMeshSurface::CheckParamsEx( double & u, double & v, MbMeshSurfaceAuxiliaryData * ucache ) const { - MbMeshSurfaceAuxiliaryData * loccache = ucache != c3d_null ? ucache : cache(); + MbMeshSurfaceAuxiliaryData * loccache = ucache != nullptr ? ucache : cache(); if ( loccache->data->PoleUMin() == spt_Undefined ) CheckPoles( loccache ); if ( loccache->data->PoleUMin() == spt_Point ) { diff --git a/C3d/Include/surf_offset_surface.h b/C3d/Include/surf_offset_surface.h index c2c4a58..066136a 100644 --- a/C3d/Include/surf_offset_surface.h +++ b/C3d/Include/surf_offset_surface.h @@ -44,7 +44,7 @@ class MATH_CLASS MbSurfaceContiguousData; // --- class MATH_CLASS MbOffsetSurface : public MbSurface { private: - MbSurface * basisSurface; ///< \ru Базовая поверхность (всегда не c3d_null). \en Base surface (always not c3d_null). + MbSurface * basisSurface; ///< \ru Базовая поверхность (всегда не nullptr). \en Base surface (always not nullptr). double u0min; ///< \ru Минимальный параметр u базовой поверхности. \en Minimal parameter u of the base surface. double u0max; ///< \ru Максимальный параметр u базовой поверхности. \en Maximal parameter u of the base surface. double v0min; ///< \ru Минимальный параметр v базовой поверхности. \en Minimal parameter v of the base surface. @@ -197,14 +197,14 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Является ли объект копией. \en Whether the object is a copy. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. virtual bool IsPlanar( double accuracy = METRIC_EPSILON ) const; // \ru Является ли поверхность плоской. \en Whether the surface is planar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Move. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Move. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void Refresh(); // \ru Сбросить все временные данные \en Flush all the temporary data virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта. \en Get properties of the object. @@ -303,7 +303,7 @@ public: virtual double CurvatureU ( double u, double v ) const; // \ru Kривизна линии u. \en Curvature of u-line. virtual double CurvatureV ( double u, double v ) const; // \ru Kривизна линии v. \en Curvature of v-line. // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection onto the surface. - virtual bool NearPointProjection( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual bool NearPointProjection( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Изменение носителя. \en Changing of carrier. virtual void ChangeCarrier( const MbSpaceItem & item, MbSpaceItem & init ); // \ru Изменение носимых элементов. \en Change a carrier elements. @@ -338,7 +338,7 @@ public: virtual bool IsLineV () const; // \ru Если true все производные по V выше первой равны нулю. \en If true, then all the derivatives by V higher the first one are equal to zero. // \ru Найти все проекции точки на поверхность вдоль вектора в любом из двух направлений. \en Find all a point projection onto the surface along a vector in either of two directions. - virtual void DirectPointProjection( const MbCartPoint3D & pnt, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual void DirectPointProjection( const MbCartPoint3D & pnt, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = nullptr ) const; /** \brief \ru Проверить параметры. Аналог глобальной функции _CheckParams, оптимизированный под использование кэшей. \en Check parameters. Analogue of the global function _CheckParams, optimized for caches usage. \~ diff --git a/C3d/Include/surf_plane.h b/C3d/Include/surf_plane.h index a9a6973..8ae2e4d 100644 --- a/C3d/Include/surf_plane.h +++ b/C3d/Include/surf_plane.h @@ -209,8 +209,8 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию элемента. \en Create a copy of the element. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равными. \en Make equal. @@ -322,10 +322,10 @@ public: virtual MbeItemLocation PointRelative ( const MbCartPoint3D & pnt, double eps = ANGLE_REGION ) const; virtual double DistanceToPoint( const MbCartPoint3D & ) const; // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. // \ru Найти все проекции точки на поверхность вдоль вектора в любом из двух направлений. \en Find all a point projection onto the surface along a vector in either of two directions. - virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & v, SArray & uv, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & v, SArray & uv, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Ближайшая проекция точки на поверхность в направлении вектора. \en The nearest projection of a point to the surface in direction of the vector. virtual bool NearDirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vector, - double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null, bool onlyPositiveDirection = false ) const; + double & u, double & v, bool ext, MbRect2D * uvRange = nullptr, bool onlyPositiveDirection = false ) const; // \ru Пересечения с кривой. \en Intersection with a curve. virtual MbeNewtonResult CurveIntersectNewton( const MbCurve3D &, double funcEpsilon, size_t limit, double & u, double & v, double & t, bool ext0, bool ext ) const; // \ru Нахождениe точки пересечения c кривой. \en Search of a point of intersection with curve. @@ -371,7 +371,7 @@ public: /** \ru \name Функции элементарных поверхностей \en \name Functions of elementary surfaces. \{ */ - virtual bool GetPointProjection( const MbCartPoint3D & p, bool init, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual bool GetPointProjection( const MbCartPoint3D & p, bool init, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; /** \} */ /** \ru \name Функции плоскости \en \name Functions of plane. @@ -418,7 +418,7 @@ public: /// \ru Матрица для преобразования симметрии относительно плоскости. \en The matrix of symmetry transformation relative to the plane void Symmetry ( MbMatrix3D & m ) const { position.Symmetry(m); } /// \ru Инвертировать нормаль плоскости. \en Invert the normal of plane. - void Invert( MbMatrix * = c3d_null, MbRegTransform * ireg = c3d_null ); + void Invert( MbMatrix * = nullptr, MbRegTransform * ireg = nullptr ); /// \ru Сделать систему координат правой. \en Make the coordinate system right. void SetRightPlacement() { position.SetRight(); SetDirtyGabarit(); } diff --git a/C3d/Include/surf_polysurface.h b/C3d/Include/surf_polysurface.h index 59bc181..f85fc33 100644 --- a/C3d/Include/surf_polysurface.h +++ b/C3d/Include/surf_polysurface.h @@ -84,12 +84,12 @@ public: \{ */ virtual MbeSpaceType IsA() const = 0; // \ru Тип элемента \en Type of element virtual MbeSpaceType Type() const; // \ru Тип элемента \en Type of element - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Cделать копию элемента \en Make a copy of an element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Cделать копию элемента \en Make a copy of an element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const = 0; // \ru Являются ли объекты равными \en Determine whether objects are equal virtual bool SetEqual ( const MbSpaceItem & ) = 0; // \ru Сделать равным \en Make equal - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг \en Translation - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси \en Rotate about an axis + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице \en Transform element according to the matrix + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг \en Translation + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси \en Rotate about an axis virtual void GetProperties( MbProperties & ) = 0; // \ru Выдать свойства объекта \en Get properties of the object virtual void SetProperties( const MbProperties & ) = 0; // \ru Записать свойства объекта \en Set properties of the object diff --git a/C3d/Include/surf_revolution_surface.h b/C3d/Include/surf_revolution_surface.h index 8e2fdc5..06a2c4f 100644 --- a/C3d/Include/surf_revolution_surface.h +++ b/C3d/Include/surf_revolution_surface.h @@ -137,13 +137,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Translation. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Translation. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -241,9 +241,9 @@ public: virtual MbCurve3D * CurveV( double u, MbRect1D * pRgn, bool bApprox = true ) const; // \ru Пространственная копия линии u = const \en A spatial copy of the line u = const. // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection on the surface. - virtual bool NearPointProjection( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection on the surface. + virtual bool NearPointProjection( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection on the surface. // \ru Найти все проекции точки на поверхность вдоль вектора в любом из двух направлений. \en Find all a point projection onto the surface along a vector in either of two directions. - virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Подобные ли поверхности для объединения (слива). \en Whether the surfaces are similar to merge. virtual bool IsSimilarToSurface( const MbSurface & surf, VERSION version, double precision = METRIC_PRECISION ) const; @@ -254,7 +254,7 @@ public: virtual bool IsSpecialSimilarToSurface( const MbSurface & surf, VERSION version, double precision = METRIC_PRECISION ) const; // \ru Специальный случай \en Special case // \ru Построить касательные и нормальные плейсменты конструктивных плоскостей. \en Construct tangent and normal placements of constructive planes. - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; virtual double GetFilletRadius( const MbCartPoint3D & p ) const; // \ru Является ли поверхность скруглением. \en Whether the surface is fillet. diff --git a/C3d/Include/surf_ruled_surface.h b/C3d/Include/surf_ruled_surface.h index 5344aef..ed83dbd 100644 --- a/C3d/Include/surf_ruled_surface.h +++ b/C3d/Include/surf_ruled_surface.h @@ -116,13 +116,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Move. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Move. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties &properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties &properties ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -214,7 +214,7 @@ public: virtual void ChangeCarrier( const MbSpaceItem & item, MbSpaceItem & init ); // \ru Изменение носителя. \en Changing of carrier. // \ru Ближайшая проекция точки на поверхность. \en The nearest point projection onto the surface. - virtual bool NearPointProjection( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual bool NearPointProjection( const MbCartPoint3D & p, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Пересечение с кривой. \en Intersection with curve. virtual void CurveIntersection( const MbCurve3D & curv, SArray & uv, SArray & tt, @@ -232,7 +232,7 @@ public: virtual MbCurve3D * CurveUV( const MbLineSegment &, bool bApprox = true ) const; // \ru Пространственная копия линии по параметрической линии. \en Spatial copy of line by parametric line. // \ru Построить касательные и нормальные плейсменты конструктивных плоскостей. \en Construct tangent and normal placements of constructive planes. - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; virtual bool GetCylinderAxis( MbAxis3D &axis ) const; // \ru Дать ось вращения для поверхности \en Get a rotation axis of a surface // \ru Подобные ли поверхности для объединения (слива). \en Whether the surfaces to union (joining) are similar. diff --git a/C3d/Include/surf_section_surface.h b/C3d/Include/surf_section_surface.h index afcf2e7..aeb6c8a 100644 --- a/C3d/Include/surf_section_surface.h +++ b/C3d/Include/surf_section_surface.h @@ -56,8 +56,8 @@ protected: MbCurve3D * guide1; ///< \ru Первая направляющая кривая. \en The first guide curve. MbCurve3D * guide2; ///< \ru Вторая направляющая кривая. \en The second guide curve. std::vector curves; ///< \ru Дополнительные контрольные кривые (могут отсутствовать). \en The additional control curves (may be empty). - MbFunction * function; ///< \ru Функция управления сечением (радиус или дискриминант, может быть c3d_null)). \en Section control function (radius or discriminant, may be c3d_null). - MbPolyCurve * pattern; ///< \ru Образующая кривая при form==cs_Shape (для других форм c3d_null). \en Forming curve for form==cs_Shape (c3d_null on other case). + MbFunction * function; ///< \ru Функция управления сечением (радиус или дискриминант, может быть nullptr)). \en Section control function (radius or discriminant, may be nullptr). + MbPolyCurve * pattern; ///< \ru Образующая кривая при form==cs_Shape (для других форм nullptr). \en Forming curve for form==cs_Shape (nullptr on other case). std::vector shape; ///< \ru Описание сечения при form==cs_Shape (пуст в других случаях). \en Description of shape cross-section for form==cs_Shape (is empty on other case). std::vector knots; ///< \ru Узловой вектор сплайна. \en Knot vector of the spline. size_t order; ///< \ru Порядок сплайна (степень + 1). \en Order of spline (degree + 1). @@ -182,8 +182,8 @@ public: \en The first guide curve. \~ \param[in] g2 - \ru Вторая направляющая кривая (g1==g2 совпадает с первой при cs_Round). \en The second guide curve (g1==g2 the same first guide for st_Round). \~ - \param[in] c0 - \ru Дополнительная направляющая кривая (может быть c3d_null). - \en The additional guide curve (may be c3d_null). \~ + \param[in] c0 - \ru Дополнительная направляющая кривая (может быть nullptr). + \en The additional guide curve (may be nullptr). \~ \param[in] f - \ru Форма сечения поверхности. \en The form of the surface section. \~ \param[in] sense - \ru Направление нормали поверхности направляющей кривой (для guide1==guide2). @@ -229,13 +229,13 @@ public: virtual MbeSpaceType IsA() const; // \ru Тип элемента \en A type of element virtual MbeSpaceType Type() const; // \ru Групповой тип элемента. \en Group element type. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar ( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Move. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Move. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -342,7 +342,7 @@ public: virtual MbCurve3D * CurveV( double u, MbRect1D *pRgn, bool bApprox = true ) const; // \ru Пространственная копия линии u = const. \en Spatial copy of 'u = const'-line. // \ru Построить касательные и нормальные плейсменты конструктивных плоскостей. \en Construct tangent and normal placements of constructive planes. - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; // \ru Подобные ли поверхности для объединения (слива). \en Whether the surfaces to union (joining) are similar. virtual bool IsSimilarToSurface( const MbSurface & surf, VERSION version, double precision = METRIC_PRECISION ) const; @@ -370,17 +370,17 @@ public: const MbSpine & GetSpine() const { return *spine; } /// \ru Дать опорную кривую. \en Get reference curve. const MbCurve3D & GetSpineCurve() const { return spine->GetCurve(); } - /// \ru Дать первую направляющую кривую (может быть c3d_null). \en Get first guide curve (may be c3d_null). + /// \ru Дать первую направляющую кривую (может быть nullptr). \en Get first guide curve (may be nullptr). const MbCurve3D * GetGuide1() const { return guide1; } - /// \ru Дать вторую направляющую кривую (может быть c3d_null). \en Get second guide curve (may be c3d_null). + /// \ru Дать вторую направляющую кривую (может быть nullptr). \en Get second guide curve (may be nullptr). const MbCurve3D * GetGuide2() const { return guide2; } - /// \ru Дать кривую вершин (может отсутствовать). \en Get apex curve (may be c3d_null). - const MbCurve3D * GetApexCurve() const { return ( curves.size() > 0 ) ? curves[0] : c3d_null; } + /// \ru Дать кривую вершин (может отсутствовать). \en Get apex curve (may be nullptr). + const MbCurve3D * GetApexCurve() const { return ( curves.size() > 0 ) ? curves[0] : nullptr; } /// \ru Дать дополнительную направляющую кривую (может отсутствовать). \en Get additional guide curve (may be absence). - const MbCurve3D * GetCurve( size_t i ) const { return ( i < curves.size() ) ? curves[i] : c3d_null; } - /// \ru Дать функцию управления сечением (радиус или дискриминант, может быть c3d_null)). \en Get section control function (radius or discriminant, may be c3d_null). + const MbCurve3D * GetCurve( size_t i ) const { return ( i < curves.size() ) ? curves[i] : nullptr; } + /// \ru Дать функцию управления сечением (радиус или дискриминант, может быть nullptr)). \en Get section control function (radius or discriminant, may be nullptr). const MbFunction * GetFunction() const { return function; } - /// \ru Дать образующую кривую при form==cs_Shape (для других форм c3d_null). \en Get forming curve for form==cs_Shape (c3d_null on other case). + /// \ru Дать образующую кривую при form==cs_Shape (для других форм nullptr). \en Get forming curve for form==cs_Shape (nullptr on other case). const MbPolyCurve * GetPattern() const { return pattern; } /// \ru Вычисление параметров направляющих кривых по второму параметру поверхности. \en Calculating the parameters of guide curves by the second surface parameter. diff --git a/C3d/Include/surf_sector_surface.h b/C3d/Include/surf_sector_surface.h index 19a4f9d..640c0c0 100644 --- a/C3d/Include/surf_sector_surface.h +++ b/C3d/Include/surf_sector_surface.h @@ -66,13 +66,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Cделать копию элемента. \en Make a copy of an element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Cделать копию элемента. \en Make a copy of an element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными. \en Determine whether objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать. \en Transform. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Translation. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать. \en Transform. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Translation. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties & ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -163,7 +163,7 @@ public: virtual void CalculateLocalGabarit( const MbMatrix3D &, MbCube & ) const; // \ru Рассчитать габарит относительно л.с.к. \en Calculate bounding box relative to the local coordinate system. // \ru Построить касательные и нормальные плейсменты конструктивных плоскостей. \en Construct tangent and normal placements of constructive planes. - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; // \ru Определение разбивки параметрической области поверхности вертикалями и горизонталями. \en Determine a splitting of parametric region of a surface by verticals and horizontals. virtual void GetTesselation( const MbStepData & stepData, diff --git a/C3d/Include/surf_smooth_surface.h b/C3d/Include/surf_smooth_surface.h index 718ca23..9115136 100644 --- a/C3d/Include/surf_smooth_surface.h +++ b/C3d/Include/surf_smooth_surface.h @@ -37,8 +37,8 @@ class MATH_CLASS MbSurfaceIntersectionCurve; // --- class MATH_CLASS MbSmoothSurface : public MbSurface { protected: - MbSurfaceCurve * curve1; ///< \ru Опорная кривая на первой поверхности (всегда не c3d_null). \en Support curve on the first surface (it never equals c3d_null). - MbSurfaceCurve * curve2; ///< \ru Опорная кривая на второй поверхности (всегда не c3d_null). \en Support curve on the second surface (it never equals c3d_null). + MbSurfaceCurve * curve1; ///< \ru Опорная кривая на первой поверхности (всегда не nullptr). \en Support curve on the first surface (it never equals nullptr). + MbSurfaceCurve * curve2; ///< \ru Опорная кривая на второй поверхности (всегда не nullptr). \en Support curve on the second surface (it never equals nullptr). MbeSmoothForm form; ///< \ru Тип сопряжения. \en Conjugation type. double distance1; ///< \ru Радиус скругления или "катет" фаски со знаком для поверхности кривой curve1. \en Fillet radius or chamfer "cathetus" with sign for surface of curve1 curve. double distance2; ///< \ru Радиус скругления или "катет" фаски со знаком для поверхности кривой curve2. \en Fillet radius or chamfer "cathetus" with sign for surface of curve2 curve. @@ -116,12 +116,12 @@ public: \{ */ virtual MbeSpaceType IsA() const = 0; // \ru Тип элемента. \en A type of element. virtual MbeSpaceType Type() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const = 0; virtual bool SetEqual ( const MbSpaceItem & ) = 0; // \ru Сделать равным. \en Make equal. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ) = 0; // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ) = 0; // \ru Сдвиг. \en Translation. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ) = 0; // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ) = 0; // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ) = 0; // \ru Сдвиг. \en Translation. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ) = 0; // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties &properties ) = 0; // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties &properties ) = 0; // \ru Записать свойства объекта. \en Set properties of the object. @@ -215,8 +215,8 @@ public: \en Add to end (true) or add to start (false) \~ \param[in] matr - \ru Матрица преобразования объектов с init в данную поверхность, \en A matrix of transformation of objects from 'init' to the given surface, \~ - \param[in] seam - \ru Кривая другого разделяющего ребра (может быть c3d_null) - \en A curve of another splitting edge (possibly it is c3d_null) \~ + \param[in] seam - \ru Кривая другого разделяющего ребра (может быть nullptr) + \en A curve of another splitting edge (possibly it is nullptr) \~ */ virtual bool SurfacesCombine( const MbSurfaceIntersectionCurve & edge, const MbSurface & init, bool add, MbMatrix & matr, diff --git a/C3d/Include/surf_sphere_surface.h b/C3d/Include/surf_sphere_surface.h index 4f951e1..a9b3504 100644 --- a/C3d/Include/surf_sphere_surface.h +++ b/C3d/Include/surf_sphere_surface.h @@ -109,10 +109,10 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -217,7 +217,7 @@ public: virtual MbCurve3D * CurveU( double v, MbRect1D * pRgn, bool bApprox = true ) const; // \ru Пространственная копия линии v = const. \en A spatial copy of the line v = const. virtual MbCurve3D * CurveV( double u, MbRect1D * pRgn, bool bApprox = true ) const; // \ru Пространственная копия линии u = const. \en A spatial copy of the line u = const. // \ru Найти все проекции точки на поверхность вдоль вектора в любом из двух направлений. \en Find all a point projection onto the surface along a vector in either of two directions. - virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Пересечение с кривой. \en Intersection with a curve. virtual void CurveIntersection( const MbCurve3D & curv, SArray & uv, SArray & tt, bool ext0, bool ext, bool touchInclude = false ) const; @@ -269,7 +269,7 @@ public: /** \ru \name Функции элементарных поверхностей \en \name Functions of elementary surfaces. \{ */ - virtual bool GetPointProjection( const MbCartPoint3D & p, bool init, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual bool GetPointProjection( const MbCartPoint3D & p, bool init, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; /** \} */ /** \ru \name Функции конической поверхности \en \name Functions of conical surface diff --git a/C3d/Include/surf_spine.h b/C3d/Include/surf_spine.h index 1f08158..371ca28 100644 --- a/C3d/Include/surf_spine.h +++ b/C3d/Include/surf_spine.h @@ -55,11 +55,11 @@ public: }; private: - SPtr curve; ///< \ru Направляющая кривая - всегда не c3d_null. \en Spine curve - it is always not c3d_null. + SPtr curve; ///< \ru Направляющая кривая - всегда не nullptr. \en Spine curve - it is always not nullptr. MbVector3D direction; ///< \ru Вектор ориентации матрицы преобразования. \en Vector of transformation matrix orientation. - SPtr optionalCurve; ///< \ru Кривая вектора ориентации матрицы преобразования (может быть c3d_null для простой траектории). \en A curve of the transformation matrix orientation (it may be c3d_null for a simple trajectory). - SPtr spineSurface; ///< \ru Поверхность направляющей кривой, если "curve" - кривая на поверхности, или c3d_null. \en The surface of the "curve", if it is curve on surface, or c3d_null. - SPtr featureCurve; ///< \ru Двумерная кривая, если "curve" - кривая на поверхности, или c3d_null. \en Two-dimensional curve of the "curve", if it is curve on surface, or c3d_null. + SPtr optionalCurve; ///< \ru Кривая вектора ориентации матрицы преобразования (может быть nullptr для простой траектории). \en A curve of the transformation matrix orientation (it may be nullptr for a simple trajectory). + SPtr spineSurface; ///< \ru Поверхность направляющей кривой, если "curve" - кривая на поверхности, или nullptr. \en The surface of the "curve", if it is curve on surface, or nullptr. + SPtr featureCurve; ///< \ru Двумерная кривая, если "curve" - кривая на поверхности, или nullptr. \en Two-dimensional curve of the "curve", if it is curve on surface, or nullptr. LocalAxes localAxes; ///< \ru Способы ориентации локальной системы координат вдоль направляющей кривой "curve". \en Methods of orientation of the local coordinate system along the guide curve "curve". double crossSize; ///< \ru Поперечный масштаб при построении optionalCurve. \en Transverse scale in construction of "optionalCurve". double ortParam; ///< \ru Параметр кривой, для которой рассчитаны ort0, ort1, ort2. \en Parameter of a curve with evaluated ort0, ort1 and ort2. @@ -253,7 +253,7 @@ public: /// \ru Тип элемента. \en A type of element. MbeSpaceType IsA() const { return curve->IsA(); } /// \ru Сделать копию элемента. \en Create a copy of the element. - MbSpine & Duplicate( MbRegDuplicate * = c3d_null ) const; + MbSpine & Duplicate( MbRegDuplicate * = nullptr ) const; /// \ru Сделать равным. \en Make equal. bool SetEqual( const MbSpine & ); /// \ru Являются ли объекты подобными. \en Determine whether the objects are similar. @@ -261,13 +261,13 @@ public: /// \ru Равны ли объекты. \en Whether the objects are equal. bool IsSame ( const MbSpine & other, double accuracy = LENGTH_EPSILON ) const; /// \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); + void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); /// \ru Сдвиг. \en Translation. - void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); + void Move ( const MbVector3D &, MbRegTransform * = nullptr ); /// \ru Повернуть вокруг оси. \en Rotate around an axis. - void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); /// \ru Изменить направление. \en Change the direction. - void Inverse( MbRegTransform * iReg = c3d_null ); + void Inverse( MbRegTransform * iReg = nullptr ); /// \ru Сбросить временные данные объекта. \en Reset temporary data of an object. void Reset(); /** \} */ diff --git a/C3d/Include/surf_spiral_surface.h b/C3d/Include/surf_spiral_surface.h index 7c849f0..072c852 100644 --- a/C3d/Include/surf_spiral_surface.h +++ b/C3d/Include/surf_spiral_surface.h @@ -105,13 +105,13 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными. \en Determine whether the objects are similar. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвиг. \en Translation. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвиг. \en Translation. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -189,10 +189,10 @@ public: virtual MbCurve3D * CurveV( double u, MbRect1D * pRgn, bool bApprox = true ) const; // \ru Пространственная копия линии u = const. \en A spatial copy of the line u = const. // \ru Найти проекцию точки на поверхность. \en Find the projection of a point onto the surface. - virtual bool NearPointProjection ( const MbCartPoint3D & pnt, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual bool NearPointProjection ( const MbCartPoint3D & pnt, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Построить касательные и нормальные плейсменты конструктивных плоскостей. \en Construct tangent and normal placements of constructive planes. - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; // \ru Подобные ли поверхности для объединения (слива). \en Whether the surfaces are similar to merge. diff --git a/C3d/Include/surf_spline_surface.h b/C3d/Include/surf_spline_surface.h index 05f4775..ed44128 100644 --- a/C3d/Include/surf_spline_surface.h +++ b/C3d/Include/surf_spline_surface.h @@ -146,7 +146,7 @@ private: DPtr data; ///< \ru Дополнительные данные о поверхности. \en Additional data about a surface. DPtr wdata; ///< \ru Рабочие данные для расчета поверхности. \en Working data for the calculation of a surface. - double * wc; ///< \ru Рассчитанные в точке (uc,vc) значения весов (может быть c3d_null). \en Weights values calculated in the point (uc, vc) (may be c3d_null). + double * wc; ///< \ru Рассчитанные в точке (uc,vc) значения весов (может быть nullptr). \en Weights values calculated in the point (uc, vc) (may be nullptr). MbSplineSurfaceAuxiliaryData(); MbSplineSurfaceAuxiliaryData( const MbSplineSurfaceAuxiliaryData & init ); @@ -350,7 +350,7 @@ public: \en \name Common functions of geometric object. \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const; // \ru Cделать копию элемента. \en Make a copy of an element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const; // \ru Cделать копию элемента. \en Make a copy of an element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. @@ -500,9 +500,9 @@ public: virtual bool IsPlanar( double accuracy = METRIC_EPSILON ) const; // \ru Является ли поверхность плоской. \en Whether a surface is planar. // \ru Найти ближайшую проекцию точки на поверхность или ее продолжение по заданному начальному приближению. \en Find the neares projection of a point onto the surface. - virtual bool NearPointProjection ( const MbCartPoint3D & pnt, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual bool NearPointProjection ( const MbCartPoint3D & pnt, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Найти все проекции точки на поверхность вдоль вектора в любом из двух направлений. \en Find all a point projection onto the surface along a vector in either of two directions. - virtual void DirectPointProjection( const MbCartPoint3D & pnt, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual void DirectPointProjection( const MbCartPoint3D & pnt, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Являются ли узловые векторы равными? \en Are knotVectos equal? bool IsKnotsTheSame( const MbSplineSurface & e, bool sameDir, double precision ) const; @@ -767,8 +767,8 @@ public: \en Create a two-dimensional curve if a space curve is a surface boundary.\n \~ \param[in] curve - \ru Заданная пространственная кривая. \en A given space curve. \~ - \return \ru Ссылка на двумерную кривую на поверхности или c3d_null, если построить ее не удалось. - \en A reference to the two-dimensional curve on a surface or c3d_null if the construction of it is failed. \~ + \return \ru Ссылка на двумерную кривую на поверхности или nullptr, если построить ее не удалось. + \en A reference to the two-dimensional curve on a surface or nullptr if the construction of it is failed. \~ */ MbCurve * IsSplineBorder( const MbCurve3D & curve ) const; @@ -805,7 +805,7 @@ private: double GetKoef( bool isU ) const; // \ru Получить коэффициент пересчета из длины в параметры. \en Get a coefficient of recalculation of the length to the parameters. //--- - // \ru Служебные функции, которые используют заданный кэш (должен быть != c3d_null). \en Service functions that use a given cache (must != c3d_null). + // \ru Служебные функции, которые используют заданный кэш (должен быть != nullptr). \en Service functions that use a given cache (must != nullptr). bool CheckPoles( MbSplineSurfaceAuxiliaryData * ) const; // \ru Проверить наличие полюсов. \en Check poles existence. bool CatchMemory( MbSplineSurfaceAuxiliaryData * ) const; @@ -856,7 +856,7 @@ private: MbSplineSurfaceAuxiliaryData * ) const; //--- - double GetMinStep ( bool isU, const double * pRng = c3d_null ) const; + double GetMinStep ( bool isU, const double * pRng = nullptr ) const; bool ApproxAsPlane() const; // \ru Можно ли аппроксимировать поверхность как плоскость. \en Whether a surface can be approximated by a plane. // \ru Вычислить аппроксимацию поверхности, считая, что ее можно аппроксимировать как плоскость. \en Calculate an approximation of surface assuming that it can be approximated by a plane. diff --git a/C3d/Include/surf_swept_surface.h b/C3d/Include/surf_swept_surface.h index 12d1d33..2d13cb1 100644 --- a/C3d/Include/surf_swept_surface.h +++ b/C3d/Include/surf_swept_surface.h @@ -48,7 +48,7 @@ protected: MbSweptSurface( const MbCurve3D &, bool same ); MbSweptSurface( const MbSweptSurface &, MbRegDuplicate * ); MbSweptSurface() // \ru Используется только в конвертерах. \en This is used only in converters. - : curve( c3d_null ), umin( 0 ), vmin( 0 ), umax( 0 ), vmax( 0 ), uclosed( false ), vclosed( false ) {} + : curve( nullptr ), umin( 0 ), vmin( 0 ), umax( 0 ), vmax( 0 ), uclosed( false ), vclosed( false ) {} private: MbSweptSurface( const MbSweptSurface & ); // \ru Не реализовано. \en Not implemented. @@ -63,12 +63,12 @@ public: \{ */ virtual MbeSpaceType IsA() const = 0; // \ru Тип элемента. \en A type of element. virtual MbeSpaceType Type() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const= 0; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const= 0; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const = 0; // \ru Являются ли объекты равными. \en Determine whether objects are equal. virtual bool SetEqual ( const MbSpaceItem & ) = 0; // \ru Сделать равным. \en Make equal. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ) = 0; // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ) = 0; // \ru Сдвиг. \en Translation. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ) = 0; // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ) = 0; // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ) = 0; // \ru Сдвиг. \en Translation. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ) = 0; // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual void GetProperties( MbProperties & properties ) = 0; // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & properties ) = 0; // \ru Записать свойства объекта. \en Set properties of the object. diff --git a/C3d/Include/surf_tessellation.h b/C3d/Include/surf_tessellation.h index 0a47ee7..67dfb40 100644 --- a/C3d/Include/surf_tessellation.h +++ b/C3d/Include/surf_tessellation.h @@ -370,26 +370,26 @@ inline bool MbSurfaceWorkingData::Explore( double u0, double v0, bool ext0, doub bool resUV = false; bool resVV = false; - if ( uuDer == c3d_null ) + if ( uuDer == nullptr ) resUU = true; else if ( ders[sdt_DeriveUU].x != UNDEFINED_DBL ) { uuDer->Init( ders[sdt_DeriveUU] ); resUU = true; } - if ( uvDer == c3d_null ) + if ( uvDer == nullptr ) resUV = true; else if ( ders[sdt_DeriveUV].x != UNDEFINED_DBL ) { uvDer->Init( ders[sdt_DeriveUV] ); resUV = true; } - if ( vvDer == c3d_null ) + if ( vvDer == nullptr ) resVV = true; else if ( ders[sdt_DeriveVV].x != UNDEFINED_DBL ) { vvDer->Init( ders[sdt_DeriveVV] ); resVV = true; } if ( resUU && resUV && resVV ) { - if ( nor == c3d_null ) + if ( nor == nullptr ) res = true; else if ( norm.x != UNDEFINED_DBL ) { nor->Init( norm ); diff --git a/C3d/Include/surf_torus_surface.h b/C3d/Include/surf_torus_surface.h index 4deebd6..b2b013e 100644 --- a/C3d/Include/surf_torus_surface.h +++ b/C3d/Include/surf_torus_surface.h @@ -132,10 +132,10 @@ public: \en \name Common functions of a geometric object \{ */ virtual MbeSpaceType IsA() const; // \ru Тип элемента. \en A type of element. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const ; // \ru Сделать копию элемента. \en Create a copy of the element. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const ; // \ru Сделать копию элемента. \en Create a copy of the element. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const; // \ru Равны ли объекты. \en Whether the objects are equal. virtual bool SetEqual( const MbSpaceItem & ); // \ru Сделать равным. \en Make equal. - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = c3d_null ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * = nullptr ); // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. virtual void GetProperties( MbProperties & properties ); // \ru Выдать свойства объекта. \en Get properties of the object. virtual void SetProperties( const MbProperties & properties ); // \ru Записать свойства объекта. \en Set properties of the object. @@ -233,7 +233,7 @@ public: virtual MbCurve3D * CurveU( double v, MbRect1D * pRgn, bool bApprox = true ) const; // \ru Пространственная копия линии v = const. \en A spatial copy of the line v = const. virtual MbCurve3D * CurveV( double u, MbRect1D * pRgn, bool bApprox = true ) const; // \ru Пространственная копия линии u = const. \en A spatial copy of the line u = const. // \ru Найти все проекции точки на поверхность вдоль вектора в любом из двух направлений. \en Find all a point projection onto the surface along a vector in either of two directions. - virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual void DirectPointProjection( const MbCartPoint3D & p, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = nullptr ) const; // \ru Пересечение с кривой. \en Intersection with a curve. virtual void CurveIntersection( const MbCurve3D & curv, SArray & uv, SArray & tt, bool ext0, bool ext, bool touchInclude = false ) const; @@ -284,7 +284,7 @@ public: /** \ru \name Функции элементарных поверхностей \en \name Functions of elementary surfaces. \{ */ - virtual bool GetPointProjection( const MbCartPoint3D & p, bool init, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual bool GetPointProjection( const MbCartPoint3D & p, bool init, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; /** \} */ /** \ru \name Функции тороидальной поверхности \en \name Functions of toroidal surface diff --git a/C3d/Include/surface.h b/C3d/Include/surface.h index a4223cd..fdf2666 100644 --- a/C3d/Include/surface.h +++ b/C3d/Include/surface.h @@ -118,12 +118,12 @@ public: virtual MbeSpaceType IsA() const = 0; // \ru Тип элемента. \en A type of element. virtual MbeSpaceType Type() const; // \ru Групповой тип элемента. \en Group element type. virtual MbeSpaceType Family() const; // \ru Семейство объекта. \en Family of object. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * = c3d_null ) const = 0; // \ru Сделать копию объекта. \en Create a copy of the object. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * = nullptr ) const = 0; // \ru Сделать копию объекта. \en Create a copy of the object. virtual bool IsSame ( const MbSpaceItem & other, double accuracy = LENGTH_EPSILON ) const = 0; // \ru Являются ли объекты равными. \en Determine whether objects are equal. virtual bool SetEqual ( const MbSpaceItem & ) = 0; // \ru Сделать объекты равным. \en Make objects equal. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ) = 0; // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ) = 0; // \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ) = 0; // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ) = 0; // \ru Преобразовать элемент согласно матрице. \en Transform element according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ) = 0; // \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ) = 0; // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual double DistanceToPoint( const MbCartPoint3D & ) const; // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. virtual void AddYourGabaritTo( MbCube & c ) const; // \ru Добавить габарит поверхности в куб. \en Add the surface bounding box into a cube. virtual void Refresh(); // \ru Сбросить все временные данные. \en Reset all temporary data. @@ -407,11 +407,11 @@ public: \param[out] vDer - \ru Производная по v. \en Derivative with respect to v. \~ \param[out] uuDer - \ru Вторая производная по u, если не ноль. - \en Second derivative with respect to u, if not c3d_null. \~ + \en Second derivative with respect to u, if not nullptr. \~ \param[out] vvDer - \ru Вторая производная по v, если не ноль. - \en Second derivative with respect to v, if not c3d_null. \~ + \en Second derivative with respect to v, if not nullptr. \~ \param[out] uvDer - \ru Вторая производная по u и по v, если не ноль. - \en Second derivative with respect to u and v, if not c3d_null. \~ + \en Second derivative with respect to u and v, if not nullptr. \~ \ingroup Surfaces */ virtual void Explore( double & u, double & v, bool ext, @@ -867,8 +867,8 @@ public: \en Parameters of construction in u direction. \~ \param[in] vParam - \ru Параметры построения по направлению v. \en Parameters of construction in v direction. \~ - \result \ru Построенная NURBS поверхность или c3d_null при неуспешном построении. - \en The constructed NURBS surface or c3d_null in a case of failure. \~ + \result \ru Построенная NURBS поверхность или nullptr при неуспешном построении. + \en The constructed NURBS surface or nullptr in a case of failure. \~ */ virtual MbSurface * NurbsSurface( const MbNurbsParameters & uParam, const MbNurbsParameters & vParam ) const; @@ -1159,7 +1159,7 @@ public: \result \ru true - если найдена проекция, удовлетворяющая всем входным условиям. \en True - if there is found a projection which satisfies to all input conditions. \~ */ - virtual bool NearPointProjection( const MbCartPoint3D & pnt, double & u, double & v, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual bool NearPointProjection( const MbCartPoint3D & pnt, double & u, double & v, bool ext, MbRect2D * uvRange = nullptr ) const; /// \ru Нахождение проекции точки на поверхность в направлении вектора. Для внутреннего использования. \en Finding of point projections to the surface in direction of the vector. For internal use only. virtual MbeNewtonResult DirectPointProjectionNewton( const MbCartPoint3D & p, const MbVector3D & vect, size_t iterLimit, double & u, double & v, double & w, bool ext ) const; @@ -1183,7 +1183,7 @@ public: \param[in] uvRange - \ru Диапазон изменения параметров поверхности, в котором надо найти решение. \en A range of surface parameters changing in which the solution should be found. \~ */ - virtual void DirectPointProjection( const MbCartPoint3D & pnt, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = c3d_null ) const; + virtual void DirectPointProjection( const MbCartPoint3D & pnt, const MbVector3D & vect, SArray & uv, bool ext, MbRect2D * uvRange = nullptr ) const; /** \brief \ru Найти ближайшую проекцию точки на поверхность в направлении вектора. \en Find the nearest point projection to the surface in the vector direction. \~ @@ -1209,7 +1209,7 @@ public: \en True - if there is found a projection which satisfies to all input conditions. \~ */ virtual bool NearDirectPointProjection( const MbCartPoint3D & pnt, const MbVector3D & vect, double & u, double & v, bool ext, - MbRect2D * uvRange = c3d_null, bool onlyPositiveDirection = false ) const; + MbRect2D * uvRange = nullptr, bool onlyPositiveDirection = false ) const; /// \ru Решение системы уравнений для определения пересечения поверхности и кривой. Для внутреннего использования. \en Solution of equation system for determination of intersections between a surface and a curve. For internal use only. virtual MbeNewtonResult CurveIntersectNewton( const MbCurve3D & curv1, double funcEpsilon, size_t iterLimit, double & u0, double & v0, double & t1, bool ext0, bool ext1 ) const; @@ -1372,7 +1372,7 @@ public: virtual double DistanceToSurface( const MbSurface & surf1, double & u0, double & v0, double & u1, double & v1 ) const; /// \ru Построить нормальные плейсменты конструктивных плоскостей. \en Construct normal placements of constructive planes. - virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + virtual bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; /// \ru Построить касательные плейсменты конструктивных плоскостей. \en Construct tangent placements of constructive planes. virtual bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; /// \ru Построить касательные плейсменты конструктивных плоскостей. Для внутреннего использования. \en Construct tangent placements of constructive planes. For internal use only. @@ -1453,7 +1453,7 @@ public: \param[in] s - \ru Поверхность-копия. \en A surface-copy. \~ */ - void CopyGabarit( const MbSurface & s, const MbVector3D * to = c3d_null ) { cube = s.cube; if ( (to != c3d_null) && !cube.IsEmpty() ) { cube.Move( *to ); } } + void CopyGabarit( const MbSurface & s, const MbVector3D * to = nullptr ) { cube = s.cube; if ( (to != nullptr) && !cube.IsEmpty() ) { cube.Move( *to ); } } /// \ru Вычислить диагональ габаритного куба. \en Calculate the diagonal of the bounding box. double GetGabDiagonal() const { if ( cube.IsEmpty() ) { MbCube tmp; CalculateGabarit( tmp ); } return cube.GetDiagonal(); } diff --git a/C3d/Include/system_atomic.h b/C3d/Include/system_atomic.h index a5f6ea0..be19cd7 100644 --- a/C3d/Include/system_atomic.h +++ b/C3d/Include/system_atomic.h @@ -22,14 +22,6 @@ // //--- -#ifdef C3D_STANDARD_CXX_11_PARTIAL - #ifndef _NOT_USE_ATOMIC - #define C3D_USE_CXX11_ATOMIC - #endif -#endif - -#ifdef C3D_USE_CXX11_ATOMIC - #include typedef std::atomic_ptrdiff_t use_count_type; ///< \ru Потокобезопасный тип счётчика ссылок. \en Thread-safe references count type. @@ -111,170 +103,5 @@ public: Type operator()() const { return static_cast( m_value.load() ); } }; -#else - -//------------------------------------------------------------------------------ -// \ru Шаблонный класс, работающий с целочисленными типами данных. Базовый класс для потокобезопасных счётчиков. -// \en Template class working with integer data types. Base class for thread-safe counters. -//-- -template< class Type > -class atomic_itype -{ -protected: - CommonMutex m_lock; - Type m_value; -public: - atomic_itype() {} - atomic_itype( const atomic_itype & t ) : m_value( t.m_value ) {} - atomic_itype( const Type & t ) : m_value( t ) {} - - // \ru Операторы присваивания. \en Assignment operators. - atomic_itype & operator = ( const atomic_itype & t ) { ScopedLock l( &m_lock ); m_value = t.m_value; return *this; } - atomic_itype & operator = ( Type t ) { ScopedLock l( &m_lock ); m_value = t; return *this; } - - // \ru Операторы инкремента и декремента. \en Increment and decrement operators. - atomic_itype & operator ++ () { ScopedLock l( &m_lock ); ++m_value; return *this; } // prefix ++ - atomic_itype & operator -- () { ScopedLock l( &m_lock ); --m_value; return *this; } // prefix -- - Type operator ++ ( int ) { // postfix ++ - Type t = m_value; - { - ScopedLock l( &m_lock ); - ++m_value; - } - return t; - } - Type operator -- ( int ) { // postfix -- - Type t = m_value; - { - ScopedLock l( &m_lock ); - --m_value; - } - return t; - } - - // \ru Операторы сравнения. \en Comparison operators. - bool operator == ( const atomic_itype & t ) const { return m_value == t.m_value; } - bool operator != ( const atomic_itype & t ) const { return m_value != t.m_value; } - bool operator < ( const atomic_itype & t ) const { return m_value < t.m_value; } - bool operator > ( const atomic_itype & t ) const { return m_value > t.m_value; } - bool operator <= ( const atomic_itype & t ) const { return m_value <= t.m_value; } - bool operator >= ( const atomic_itype & t ) const { return m_value >= t.m_value; } - - // \ru Доступ к данным. \en Data access. - Type operator()() const { return m_value; } - -}; - -//------------------------------------------------------------------------------ -// \ru Потокобезопасный логический тип. \en Thread-safe boolean type. -//-- -class atomic_bool : public atomic_itype -{ -public: - atomic_bool() {} - - atomic_bool( const atomic_bool & t ) : atomic_itype( t.m_value ) {} - atomic_bool( const bool t ) : atomic_itype( t ? 1 : 0 ) {} - atomic_bool( const int t ) : atomic_itype( t != 0 ? 1 : 0 ) {} - - // \ru Операторы присваивания. \en Assignment operators. - atomic_bool & operator = ( const atomic_bool & t ) { ScopedLock l( &m_lock ); m_value = t.m_value; return *this; } - atomic_bool & operator = ( bool t ) { ScopedLock l( &m_lock ); m_value = t ? 1 : 0; return *this; } - atomic_bool & operator = ( int t ) { ScopedLock l( &m_lock ); m_value = t != 0 ? 1 : 0; return *this; } - - bool operator && ( bool t ) { return t == !!m_value; } - bool operator || ( bool t ) { return t || !!m_value; } - - // \ru Доступ к данным. \en Data access. - bool operator()() const { return !!m_value; } - -private: - // \ru Операторы инкремента и декремента не разрешены. \en Increment and decrement operators not allowed. - atomic_bool & operator ++ (); - atomic_bool & operator -- (); - bool operator ++ ( int ); - bool operator -- ( int ); -}; - -typedef atomic_itype serial_type; // \ru Потокобезопасный тип счётчика ссылок. \en Thread-safe references count type. -typedef atomic_itype use_count_type; // \ru Потокобезопасный тип счётчика ссылок. \en Thread-safe references count type. -typedef atomic_itype flag_type; ///< \ru Потокобезопасный тип флага. \en Thread-safe flag type. - -//------------------------------------------------------------------------------ -/** \ru Получить значение. \en Get value. -*/ -//--- -template -Type LoadTypeValue( const AtomicType & v ) { - return v(); -} - -//------------------------------------------------------------------------------ -/** \ru Установить значение. \en Get value. -*/ -//--- -template -void StoreTypeValue( const AtomicType & src, AtomicType & dst ) { - dst = src; -} - -//------------------------------------------------------------------------------ -/** \ru Установить значение. \en Get value. -*/ -//--- -template -void StoreTypeValue( const Type src, AtomicType & dst ) { - dst = src; -} - -//------------------------------------------------------------------------------ -/** \ru Получить значение. \en Get value. -*/ -//--- -inline size_t SerialTypeValue( const serial_type & v ) { - return v(); -} -inline ptrdiff_t UseCountValue( const use_count_type & v ) { - return v(); -} - -//------------------------------------------------------------------------------ -// \ru Шаблонный класс для перечислений (Type - тип перечисления). -// \en Template class for enums (Type - a type of enum). -//-- -template< class Type > -class atomic_enum_type : public atomic_itype -{ -public: - atomic_enum_type() : atomic_itype() {} - atomic_enum_type( Type & val ) : atomic_itype( val ) {} - atomic_enum_type( const Type & val ) : atomic_itype( val ) {} - atomic_enum_type( const atomic_enum_type & val ) : atomic_itype( val.m_value ) {} - atomic_enum_type( atomic_enum_type & val ) : atomic_itype( val.m_value ) {} - - // \ru Операторы присваивания. \en Assignment operators. - atomic_enum_type & operator = ( const atomic_enum_type & t ) { ScopedLock l( &m_lock ); m_value = t.m_value; return *this; } - atomic_enum_type & operator = ( const Type & t ) { ScopedLock l( &m_lock ); m_value = t; return *this; } - - // \ru Операторы сравнения. \en Comparison operators. - bool operator == ( const atomic_enum_type & t ) const { return m_value == t.m_value; } - bool operator == ( const Type & t ) const { return m_value == t; } - bool operator != ( const atomic_enum_type & t ) const { return m_value != t.m_value; } - bool operator != ( const Type & t ) const { return m_value != t; } - bool operator < ( const atomic_enum_type & t ) const { return m_value < t.m_value; } - bool operator < ( Type t ) const { return m_value < t; } - bool operator > ( const atomic_enum_type & t ) const { return m_value > t.m_value; } - bool operator > ( const Type & t ) const { return m_value > t; } - bool operator <= ( const atomic_enum_type & t ) const { return m_value <= t.m_value; } - bool operator <= ( const Type & t ) const { return m_value <= t; } - bool operator >= ( const atomic_enum_type & t ) const { return m_value >= t.m_value; } - bool operator >= ( const Type & t ) const { return m_value >= t; } - - // \ru Доступ к данным. \en Data access. - Type operator()() const { return static_cast( m_value ); } -}; - -#endif // C3D_USE_CXX11_ATOMIC - #endif // __SYSTEM_ATOMIC_H diff --git a/C3d/Include/system_cpp_standard.h b/C3d/Include/system_cpp_standard.h index 434d3c2..c747530 100644 --- a/C3d/Include/system_cpp_standard.h +++ b/C3d/Include/system_cpp_standard.h @@ -99,10 +99,6 @@ #define C3D_STANDARD_CXX_11 #endif -#if defined(C3D_STANDARD_CXX_11) || ((defined(_MSC_VER) && (_MSC_VER > 1600)) && C3D_STANDARD_CXX_LIMIT >= 2011) - #define C3D_STANDARD_CXX_11_PARTIAL -#endif - #if C3D_STANDARD_CXX_LIMIT >= 2014 && C3D_STANDARD_CXX >= 2014 #define C3D_STANDARD_CXX_14 #endif @@ -151,15 +147,6 @@ // C++ standard dependent syntax. ////////////////////////////////////////////////////////////////////////////////////////// -//------------------------------------------------------------------------------ -/// \ru Обертка для override. \en Wrapper for override. -//--- -#if defined(C3D_STANDARD_CXX_11_PARTIAL) - #define c3d_override override -#else - #define c3d_override -#endif - //------------------------------------------------------------------------------ /// \ru Обертка для constexpr. \en Wrapper for constexpr. //--- @@ -169,27 +156,6 @@ #define c3d_constexpr const #endif // C3D_STANDARD_CXX_11 -//------------------------------------------------------------------------------ -// \ru Нулевой указатель. \en Null pointer. -//--- -#ifdef C3D_STANDARD_CXX_11_PARTIAL - #define c3d_null nullptr -#else - #if !defined(NULL) - #define NULL 0 - #endif - #define c3d_null NULL -#endif // C3D_STANDARD_CXX_11_PARTIAL - -//------------------------------------------------------------------------------ -// \ru Обертка для final. \en Wrapper for final. -//--- -#ifdef C3D_STANDARD_CXX_11 - #define c3d_final final -#else - #define c3d_final -#endif // C3D_STANDARD_CXX_11 - //------------------------------------------------------------------------------ // \ru Спецификатор для потоко-зависимого хранения данных. \en Specifier for thread-depended storage duration. //--- diff --git a/C3d/Include/system_dependency.h b/C3d/Include/system_dependency.h index c5c227e..0191f8a 100644 --- a/C3d/Include/system_dependency.h +++ b/C3d/Include/system_dependency.h @@ -100,11 +100,9 @@ inline uint8 GetBValue(COLORREF rgb_color) #include -#ifdef C3D_STANDARD_CXX_11_PARTIAL - #include - // #error is not supported when compiling with /clr or /clr:pure. - // #include -#endif +#include +// #error is not supported when compiling with /clr or /clr:pure. +// #include #ifndef threadLocal # if (__STDC_VERSION__ >= 201112) && !defined(__STDC_NO_THREADS__) @@ -134,15 +132,11 @@ inline uint8 GetBValue(COLORREF rgb_color) */ // --- class MbAccurateTimer { -#ifdef C3D_STANDARD_CXX_11_PARTIAL - typedef std::chrono::high_resolution_clock::time_point TimePoint; -#endif +typedef std::chrono::high_resolution_clock::time_point TimePoint; protected: double lastTime; ///< \ru Время в секундах. \en Time in seconds. private: -#ifdef C3D_STANDARD_CXX_11_PARTIAL TimePoint begTime; ///< \ru Засечка времени. \en Time stamp. -#endif public: /// \ru Конструктор. \en Constructor. @@ -171,9 +165,7 @@ public: //--- inline void MbAccurateTimer::Begin() { -#ifdef C3D_STANDARD_CXX_11_PARTIAL begTime = std::chrono::high_resolution_clock::now(); -#endif } //------------------------------------------------------------------------------ @@ -181,11 +173,9 @@ inline void MbAccurateTimer::Begin() // --- inline void MbAccurateTimer::End() { -#ifdef C3D_STANDARD_CXX_11_PARTIAL TimePoint endTime = std::chrono::high_resolution_clock::now(); double t = std::chrono::duration_cast< std::chrono::duration >(endTime - begTime).count(); SetTime( t ); -#endif } diff --git a/C3d/Include/system_types.h b/C3d/Include/system_types.h index 64dad0e..4b489bd 100644 --- a/C3d/Include/system_types.h +++ b/C3d/Include/system_types.h @@ -74,36 +74,6 @@ typedef uint32 VERSION; ///< \ru Версия. \en Version. \~ #include -//------------------------------------------------------------------------------ -// \ru Умный указатель, единолично владеющий объектом. -// \en Smart pointer that solely owns the object. -//--- -#ifdef C3D_STANDARD_CXX_11_PARTIAL - #define std_unique_ptr std::unique_ptr -#else - #define std_unique_ptr std::auto_ptr -#endif - -//------------------------------------------------------------------------------ -// \ru Умный указатель, обеспечивающий совместное владение объектом. -// \en Smart pointer that retains shared ownership of an object. -//--- -#define std_shared_ptr std::shared_ptr - -//------------------------------------------------------------------------------ -// \ru Шаблон функции, генерирующей обертку для объекта функции-члена. -// \en Template function generating a member function wrapper object. -//--- -#ifdef C3D_STANDARD_CXX_11_PARTIAL -// \ru Замена работает в большинстве случаев (в остальных случаях требуется напрямую использовать шаблоны STL). -// \en The replacement works in most cases (in the rest cases you need to use STL templates directly). - #define c3d_mem_fun std::mem_fn - #define c3d_mem_fun_ref std::mem_fn -#else - #define c3d_mem_fun std::mem_fun - #define c3d_mem_fun_ref std::mem_fun_ref -#endif - //------------------------------------------------------------------------------ // \ru Системные лимиты \en System limits //--- diff --git a/C3d/Include/templ_array2.h b/C3d/Include/templ_array2.h index 3c394ff..d3f1857 100644 --- a/C3d/Include/templ_array2.h +++ b/C3d/Include/templ_array2.h @@ -65,8 +65,8 @@ public: ~Array2() { set_array_size( *this, 0, 0 ); } public: - /// \ru Создать массив заданной размерности (возвращает c3d_null в случае неудачи). - /// \en Create an array of a given dimension (returns c3d_null in case of failure). + /// \ru Создать массив заданной размерности (возвращает nullptr в случае неудачи). + /// \en Create an array of a given dimension (returns nullptr in case of failure). static Array2 * Create( size_t lSize, size_t cSize ); public: // Общие методы матриц (двумерных массивов) @@ -221,13 +221,13 @@ inline Array2::Array2( const Array2 & source ) template inline Array2 * Array2::Create( size_t lSize, size_t cSize ) { - Array2 * arr = c3d_null; + Array2 * arr = nullptr; if ( lSize * cSize < c3d::MATRIX_MAX_COUNT ) { try { arr = new Array2( lSize, cSize ); } catch ( const std::bad_alloc & ) { - arr = c3d_null; + arr = nullptr; } } return arr; @@ -285,7 +285,7 @@ const Type * Array2::GetLine( size_t i ) const { PRECONDITION( i < l ); if ( i < l ) return parr[i]; - return c3d_null; + return nullptr; } //------------------------------------------------------------------------------ @@ -296,7 +296,7 @@ Type * Array2::SetLine( size_t i ) { PRECONDITION( i < l ); if ( i < l ) return parr[i]; - return c3d_null; + return nullptr; } //------------------------------------------------------------------------------ @@ -468,7 +468,7 @@ inline bool Array2::CatchLinePointers( size_t newCount ) } catch ( ... ) { if ( newCount == 0 ) {// \ru Не смогли удалить parr. \en Failed to delete parr. - parr = c3d_null; + parr = nullptr; l = c = 0; } C3D_CONTROLED_THROW; @@ -529,7 +529,7 @@ inline bool realloc_line( Type *& line, size_t oldSize, size_t newSize ) } catch ( ... ) { if ( newSize == 0 )// \ru Не смогли удалить line. \en Failed to delete line. - line = c3d_null; + line = nullptr; C3D_CONTROLED_THROW; return false; } @@ -602,7 +602,7 @@ bool set_array_size( Array2 & arr, size_t lSize, size_t cSize ) else if ( arr.l > oldL && arr.c > 0 ) { // \ru BUG_46010 KYA K12 А кто будет выделять память для новых строк \en BUG_46010 KYA K12 And who will allocate memory for new rows Type * newLine = 0; // \ru указатель на содержимое новой строки \en pointer to contents of new row for ( i = oldL; res && i < arr.l; i++ ) { - newLine = c3d_null; + newLine = nullptr; res = ::realloc_line( newLine, 0, arr.c ); // \ru захватить память под строку \en allocate memory for one row if ( res ) { ::memset( newLine, 0, arr.c * sizeof(Type) ); diff --git a/C3d/Include/templ_balance_tree.h b/C3d/Include/templ_balance_tree.h index 1615c67..0a697a2 100644 --- a/C3d/Include/templ_balance_tree.h +++ b/C3d/Include/templ_balance_tree.h @@ -120,7 +120,7 @@ static size_t countIsSame; ///< \ru Число сравнений (для от public: /// \ru Конструктор. \en Constructor. - BalanceTree( Compare_t c_t = SimplePointCompFuncT, Compare_v c_v = c3d_null/*SimplePointCompFuncV*/, + BalanceTree( Compare_t c_t = SimplePointCompFuncT, Compare_v c_v = nullptr/*SimplePointCompFuncV*/, bool shouldDelete = true ); /// \ru Деструктор. \en Destructor. virtual ~BalanceTree(); @@ -204,7 +204,7 @@ public: BalanceTreeNode * node_m; PPNodeType typeRAB_m; public: - PPNode( BalanceTreeNode * node = c3d_null, PPNodeType t = iRoot ) + PPNode( BalanceTreeNode * node = nullptr, PPNodeType t = iRoot ) : node_m(node) , typeRAB_m(t) {} @@ -321,8 +321,8 @@ inline void BalanceTreeNode::operator delete ( void * ptr, size_t size ) { template inline BalanceTreeNode::BalanceTreeNode( BalanceTree & parent, Type * content ) : parent_m ( parent ), - left_m ( c3d_null ), - right_m ( c3d_null ), + left_m ( nullptr ), + right_m ( nullptr ), // \ru КВН K8+ count_m ( 0 ), \en КВН K8+ count_m ( 0 ), balance_m ( ts_neutral ), content_m ( content ) @@ -367,7 +367,7 @@ inline void BalanceTreeNode::SetRight( BalanceTreeNode * p ){ // --- template inline BalanceTree::BalanceTree( Compare_t c_t, Compare_v c_v, bool shouldDelete ) : - root_m ( c3d_null ), + root_m ( nullptr ), allCount_m ( 0 ), owns_m ( shouldDelete ), isBranchGrew_m( false ), @@ -418,7 +418,7 @@ inline void BalanceTree::Flush( DelType del ) { if( root_m ) { destroy_tree_node( *root_m, del ); delete root_m; - root_m = c3d_null; + root_m = nullptr; } allCount_m = 0; @@ -464,7 +464,7 @@ inline bool BalanceTree::FindIt ( const Type * content ) const { #endif // C3D_DEBUG - Type * t = compT_m ? find_tree( *this, (void *)content, true/*compT*/ ) : c3d_null; + Type * t = compT_m ? find_tree( *this, (void *)content, true/*compT*/ ) : nullptr; return !!t; } @@ -479,7 +479,7 @@ inline Type * BalanceTree::Find ( void * content ) const { countIsSame = 0; #endif // C3D_DEBUG - return compV_m ? find_tree( *this, content, false/*compT*/ ) : c3d_null; + return compV_m ? find_tree( *this, content, false/*compT*/ ) : nullptr; } @@ -579,8 +579,8 @@ inline bool BalanceTree::AddToBalanceTree( Type & content, BalanceTreeNod case ts_neutral : node->balance_m = ts_negative; break; // \ru балансировка \en balancing case ts_negative : { - BalanceTreeNode * p1 = c3d_null; - BalanceTreeNode * p2 = c3d_null; + BalanceTreeNode * p1 = nullptr; + BalanceTreeNode * p2 = nullptr; p1 = node->left_m; if ( p1 ){ if ( p1->balance_m == ts_negative ) { // \ru однократный LL поворот \en single LL rotation @@ -612,8 +612,8 @@ inline bool BalanceTree::AddToBalanceTree( Type & content, BalanceTreeNod case ts_neutral : node->balance_m = ts_positive; break; // \ru балансировка \en balancing case ts_positive : { - BalanceTreeNode * p1 = c3d_null; - BalanceTreeNode * p2 = c3d_null; + BalanceTreeNode * p1 = nullptr; + BalanceTreeNode * p2 = nullptr; p1 = node->right_m; if ( p1 ) { if ( p1->balance_m == ts_positive ) { // \ru однократный RR поворот \en single RR rotation @@ -652,8 +652,8 @@ inline void BalanceTree::BalanceL( BalanceTreeNode *& node, bool & case ts_neutral : node->balance_m = ts_positive; isBranchGrew = false; break; // \ru балансировка \en balancing case ts_positive : { - BalanceTreeNode * p1 = c3d_null; - BalanceTreeNode * p2 = c3d_null; + BalanceTreeNode * p1 = nullptr; + BalanceTreeNode * p2 = nullptr; p1 = node->right_m; if ( p1 ) { if ( p1->balance_m >= ts_neutral ) { // \ru однократный RR поворот \en single RR rotation @@ -691,8 +691,8 @@ inline void BalanceTree::BalanceR( BalanceTreeNode *& node, bool & case ts_neutral : node->balance_m = ts_negative; isBranchGrew = false; break; // \ru балансировка \en balancing case ts_negative : { - BalanceTreeNode * p1 = c3d_null; - BalanceTreeNode * p2 = c3d_null; + BalanceTreeNode * p1 = nullptr; + BalanceTreeNode * p2 = nullptr; p1 = node->left_m; if ( p1 ) { if ( p1->balance_m <= ts_neutral ) { // \ru однократный LL поворот \en single LL rotation @@ -791,8 +791,8 @@ inline bool BalanceTree::DeleteFromBalanceTree( Type & content, BalanceTr } bool oldowns = owns_m; owns_m = del == Delete ? true : del == noDelete ? false : owns_m; - q->left_m = c3d_null; - q->right_m = c3d_null; + q->left_m = nullptr; + q->right_m = nullptr; delete q; owns_m = oldowns; allCount_m--; // \ru подсчитываем общее кол-во узлов \en compute the total count of nodes @@ -813,14 +813,14 @@ template void destroy_tree_node( BalanceTreeNode& treeNode, DelType del ) { delete treeNode.left_m; - treeNode.left_m = c3d_null; + treeNode.left_m = nullptr; delete treeNode.right_m; - treeNode.right_m = c3d_null; + treeNode.right_m = nullptr; bool shouldDelete = del == Delete || ( del == defDelete && treeNode.parent_m.owns_m ); if ( shouldDelete ) { delete treeNode.content_m; - treeNode.content_m = c3d_null; + treeNode.content_m = nullptr; } } @@ -830,7 +830,7 @@ void destroy_tree_node( BalanceTreeNode& treeNode, DelType del ) { // --- template Type * find_tree( const BalanceTree& tree, void * content, bool compT ) { - Type * res = c3d_null; + Type * res = nullptr; const BalanceTreeNode * node = tree.root_m; if ( node ) { ThreeStates compRres = ts_negative; @@ -881,7 +881,7 @@ inline void BalanceTreeIterator::Restart( IteratorType t ) { // --- template inline Type * BalanceTreeIterator::operator ++(int) { - Type * res = m_CurNode ? m_CurNode->content_m : c3d_null; + Type * res = m_CurNode ? m_CurNode->content_m : nullptr; if ( m_CurNode ) Iterate( m_CurNode ); @@ -894,7 +894,7 @@ inline Type * BalanceTreeIterator::operator ++(int) { // --- template inline BalanceTreeIterator::operator Type * () const { - return m_CurNode ? m_CurNode->content_m : c3d_null; + return m_CurNode ? m_CurNode->content_m : nullptr; } @@ -1016,10 +1016,10 @@ inline void BalanceTreeIterator::Iterate( BalanceTreeNode * node ) { Iterate( m_CurNode ); } else - m_CurNode = c3d_null; + m_CurNode = nullptr; } else - m_CurNode = c3d_null; + m_CurNode = nullptr; fRepeat = false; break; } diff --git a/C3d/Include/templ_c_array.h b/C3d/Include/templ_c_array.h index 2410768..246854d 100644 --- a/C3d/Include/templ_c_array.h +++ b/C3d/Include/templ_c_array.h @@ -66,7 +66,7 @@ public : /// \ru Оператор доступа. \en An access operator. Type & operator []( size_t idx ) const { PRECONDITION( idx < count ); return parr[idx]; } // SKIP_SA /// \ru Выделена ли память? \en Is memory allocated? - bool IsNull () const { return parr == c3d_null; } + bool IsNull () const { return parr == nullptr; } /// \ru Выдать адрес начала массива. \en Get address of the beginning of an array. const Type * GetAddr() const { return parr; } @@ -125,7 +125,7 @@ inline CcArray::CcArray( size_t _count ) template inline void CcArray::Copy( const void * from, size_t cnt, size_t offset ) { - PRECONDITION( (offset + cnt <= count) && (cnt ? from != c3d_null : true) ); + PRECONDITION( (offset + cnt <= count) && (cnt ? from != nullptr : true) ); memcpy( parr + offset, from, cnt * sizeof(Type) ); // SKIP_SA } @@ -147,12 +147,12 @@ inline bool CcArray::SetArraySize( size_t newCount ) #endif #ifdef USE_REALLOC_IN_ARRAYS - if ( parr != c3d_null || newCount != 0 ) { - // \ru показывает утечки памяти, если parr==c3d_null и newCount==0 \en Memory leaks happen if parr==c3d_null and newCount==0 + if ( parr != nullptr || newCount != 0 ) { + // \ru показывает утечки памяти, если parr==nullptr и newCount==0 \en Memory leaks happen if parr==nullptr and newCount==0 parr = static_cast( REALLOC_ARRAY_SIZE(parr, newCount * sizeof(Type), true/*clear*/) ); } #else - Type * p_tmp = newCount ? new Type[newCount] : c3d_null; + Type * p_tmp = newCount ? new Type[newCount] : nullptr; delete[] parr; // \ru Удалять parr, если оператор new выполнился успешно. \en Delete parr if operator new is succeeded. parr = p_tmp; @@ -171,7 +171,7 @@ inline bool CcArray::SetArraySize( size_t newCount ) } catch ( ... ) { if ( newCount == 0 )// \ru Не смогли удалить parr. \en Failed to delete parr. - parr = c3d_null; + parr = nullptr; C3D_CONTROLED_THROW; return false; } diff --git a/C3d/Include/templ_csp_array.h b/C3d/Include/templ_csp_array.h index a123902..9cf6f86 100644 --- a/C3d/Include/templ_csp_array.h +++ b/C3d/Include/templ_csp_array.h @@ -49,7 +49,7 @@ private: public: /// \ru Конструктор. \en Constructor. - CSPArray( size_t maxCnt = 0, uint16 delt = 1, bool shouldDelete = true, bool _keepEq = false, LessFuncPtr func = c3d_null ) + CSPArray( size_t maxCnt = 0, uint16 delt = 1, bool shouldDelete = true, bool _keepEq = false, LessFuncPtr func = nullptr ) : SPArray( maxCnt, delt, shouldDelete ) , m_sort( true ) , m_keepEq( _keepEq ) @@ -181,9 +181,9 @@ inline void CSPArray::Sort( LessFuncPtr lessFunc ) template inline Type * CSPArray::RemoveObj( Type * delObject, DelType del ) { - C3D_ASSERT( SPArray::nowDeletedElem == c3d_null ); // \ru Bременно, для отладки \en Temporarily, for debugging. + C3D_ASSERT( SPArray::nowDeletedElem == nullptr ); // \ru Bременно, для отладки \en Temporarily, for debugging. size_t i = Find( delObject ); - return ( i != SYS_MAX_T ) ? RemoveInd(i, del) : c3d_null; + return ( i != SYS_MAX_T ) ? RemoveInd(i, del) : nullptr; } @@ -248,7 +248,7 @@ void qp_sort_r2( Type ** arr, size_t minIndex, size_t maxIndex ) ptrdiff_t minInd = minIndex, maxInd = maxIndex; ptrdiff_t i = minInd, j = maxInd; ptrdiff_t im = 0; - Type *middle = c3d_null; + Type *middle = nullptr; for ( ;; ) { i = minInd, j = maxInd; diff --git a/C3d/Include/templ_css_array.h b/C3d/Include/templ_css_array.h index b6c7c74..d785a5b 100644 --- a/C3d/Include/templ_css_array.h +++ b/C3d/Include/templ_css_array.h @@ -53,14 +53,14 @@ public: , m_sort( other.m_sort ) {} /// \ru Конструктор копирования. \en Copy constructor. - CSSArray( const SArray & other, SArray * del = c3d_null ) + CSSArray( const SArray & other, SArray * del = nullptr ) : SSArray( other ) , m_sort( false ) { ::q_sort( *this, del ); } /// \ru Конструктор копирования. \en Copy constructor. - CSSArray( const SArray< std::pair > & other, bool addFirst, SArray * del = c3d_null ) + CSSArray( const SArray< std::pair > & other, bool addFirst, SArray * del = nullptr ) : SSArray( other.Count(), 1 ) , m_sort( false ) { @@ -100,7 +100,7 @@ public: Type * Add ( const Type & ); ///< \ru Добавить элемент с упорядочиванием по массиву. \en Add element with sorting. Type * Add ( const Type &, size_t & indexEnt ); ///< \ru Добавить элемент с упорядочиванием по массиву, возвращает индекс. \en Add element with sorting by array, returns index of the element. size_t Find( const Type & ); ///< \ru Найти элемент в упорядоченном массиве. \en Find an element in ordered array. - void Sort( SArray * del = c3d_null ); ///< \ru Выполнить сортировку элементов массива. \en Sort elements of array. + void Sort( SArray * del = nullptr ); ///< \ru Выполнить сортировку элементов массива. \en Sort elements of array. size_t RemoveObj( const Type & delObject ); ///< \ru Удалить элемент из массива. \en Delete an element from array. void SetNoSort() { m_sort = false; } ///< \ru Сбросить флаг сортированности. \en Reset the flag of being sorted. @@ -121,7 +121,7 @@ public: // --- template inline Type * CSSArray::Add( const Type & el ) { - ::q_sort( *this, (SArray *)c3d_null ); + ::q_sort( *this, (SArray *)nullptr ); return SSArray::Add( el ); } @@ -131,7 +131,7 @@ inline Type * CSSArray::Add( const Type & el ) { // --- template inline Type * CSSArray::Add( const Type & el, size_t & indexEl ) { - ::q_sort( *this, (SArray *)c3d_null ); + ::q_sort( *this, (SArray *)nullptr ); return SSArray::Add( el, indexEl ); } @@ -146,7 +146,7 @@ inline void CSSArray::AddArray( const CSSArray & arr, bool doSort ) m_sort = false; (*this) += arr; if ( doSort ) - ::q_sort( *this, (SArray *)c3d_null ); + ::q_sort( *this, (SArray *)nullptr ); } } @@ -161,7 +161,7 @@ inline void CSSArray::AddArray( const SArray & arr, bool doSort ) m_sort = false; (*this) += arr; if ( doSort ) - ::q_sort( *this, (SArray *)c3d_null ); + ::q_sort( *this, (SArray *)nullptr ); } } @@ -171,7 +171,7 @@ inline void CSSArray::AddArray( const SArray & arr, bool doSort ) // --- template inline size_t CSSArray::Find( const Type & el ) { - ::q_sort( *this, (SArray *)c3d_null ); + ::q_sort( *this, (SArray *)nullptr ); return SSArray::Find( el ); } diff --git a/C3d/Include/templ_dptr.h b/C3d/Include/templ_dptr.h index 16335e4..f85b781 100644 --- a/C3d/Include/templ_dptr.h +++ b/C3d/Include/templ_dptr.h @@ -25,7 +25,7 @@ template class DPtr { public: /// \ru Конструктор по умолчанию. \en Default constructor. - DPtr() : m_Ptr ( c3d_null ), m_Owner( c3d_null ) {} + DPtr() : m_Ptr ( nullptr ), m_Owner( nullptr ) {} /// \ru Конструктор по указателю на объект. \en Constructor by pointer to an object. /*explicit*/ DPtr( T * obj ); /// \ru Конструктор по автоматическому указателю на объект. \en Constructor by smart pointer to an object. @@ -55,12 +55,11 @@ public: /// \ru Выдать количество владеющих экземпляров DPtr. \en Get the number of DPtr objects that share ownership. refcount_t use_count() const { return m_Owner ? m_Owner->use_count() : 0; } -#ifdef C3D_STANDARD_CXX_11_PARTIAL /// \ru Конструктор перемещения. \en Moving constructor. DPtr( DPtr && src ) : m_Ptr( src.m_Ptr ), m_Owner( src.m_Owner ) { - src.m_Ptr = c3d_null; - src.m_Owner = c3d_null; + src.m_Ptr = nullptr; + src.m_Owner = nullptr; } /// \ru Оператор перемещения. \en Moving operator. DPtr & operator = ( DPtr && src ) @@ -69,7 +68,6 @@ public: std::swap( m_Owner, src.m_Owner ); return *this; } -#endif // C3D_STANDARD_CXX_11_PARTIAL private: /// \ru Счетчик ссылок на объект. \en A counter of references to an object. @@ -79,7 +77,7 @@ private: : m_Ptr( obj ) , useCount( 0 ) { - PRECONDITION( obj != c3d_null ); + PRECONDITION( obj != nullptr ); } void AddRef() const { ++useCount; } void Release() const @@ -112,9 +110,9 @@ private: template DPtr::DPtr( T * obj ) : m_Ptr( obj ) - , m_Owner( c3d_null ) + , m_Owner( nullptr ) { - if ( obj != c3d_null ) + if ( obj != nullptr ) { m_Owner = new Owner( obj ); m_Owner->AddRef(); @@ -129,7 +127,7 @@ DPtr::DPtr( const DPtr & dptr ) : m_Ptr( dptr.m_Ptr ) , m_Owner( dptr.m_Owner ) { - if ( m_Owner != c3d_null ) + if ( m_Owner != nullptr ) m_Owner->AddRef(); // SKIP_SA } @@ -142,7 +140,7 @@ DPtr & DPtr::operator = ( T * pObj ) if ( m_Ptr != pObj ) { reset(); - if ( pObj != c3d_null ) + if ( pObj != nullptr ) { m_Ptr = pObj; m_Owner = new Owner( pObj ); @@ -162,7 +160,7 @@ DPtr & DPtr::operator = ( const DPtr & dptr ) if ( m_Ptr != dptr.m_Ptr ) { reset(); - if ( dptr.m_Ptr != c3d_null ) + if ( dptr.m_Ptr != nullptr ) { m_Ptr = dptr.m_Ptr; m_Owner = dptr.m_Owner; @@ -179,12 +177,12 @@ DPtr & DPtr::operator = ( const DPtr & dptr ) template DPtr & DPtr::reset() { - if ( m_Ptr == c3d_null ) + if ( m_Ptr == nullptr ) return *this; - m_Ptr = c3d_null; + m_Ptr = nullptr; m_Owner->Release(); // SKIP_SA - m_Owner = c3d_null; + m_Owner = nullptr; return *this; } diff --git a/C3d/Include/templ_fdp_array.h b/C3d/Include/templ_fdp_array.h index 50324e9..b30c79e 100644 --- a/C3d/Include/templ_fdp_array.h +++ b/C3d/Include/templ_fdp_array.h @@ -55,14 +55,14 @@ public : /// \ru Конструктор. \en Constructor. FDPArray() : RPArray() - , fDestroy( c3d_null ) - , nowDeletedElem(c3d_null) + , fDestroy( nullptr ) + , nowDeletedElem(nullptr) {} /// \ru Конструктор. \en Constructor. FDPArray( size_t i_upper, uint16 i_delta, DestroyFunc fd ) : RPArray( i_upper, i_delta) , fDestroy( fd ) - , nowDeletedElem(c3d_null) + , nowDeletedElem(nullptr) {} /// \ru Деструктор. \en Destructor. virtual ~FDPArray(); @@ -105,11 +105,9 @@ public: void operator delete ( void *, size_t ); #endif // __DEBUG_MEMORY_ALLOCATE_FREE_ -#ifdef C3D_STANDARD_CXX_11_PARTIAL public: FDPArray( FDPArray && ); ///< \ru Конструктор перемещения массива. \en Constructor of an array moving. FDPArray & operator = ( FDPArray && ); ///< \ru Оператор перемещения массива. \en Operator of an array moving. -#endif // C3D_STANDARD_CXX_11_PARTIAL }; @@ -131,7 +129,6 @@ inline void FDPArray::operator delete( void * ptr, size_t size ) { } #endif // __DEBUG_MEMORY_ALLOCATE_FREE_ -#ifdef C3D_STANDARD_CXX_11_PARTIAL //------------------------------------------------------------------------------ // \ru Конструктор перемещения массива. \en Constructor of an array moving. // --- @@ -141,8 +138,8 @@ FDPArray::FDPArray( FDPArray && _Right ) , fDestroy ( std::move(_Right.fDestroy) ) , nowDeletedElem( std::move(_Right.nowDeletedElem) ) { - _Right.fDestroy = c3d_null; - _Right.nowDeletedElem = c3d_null; + _Right.fDestroy = nullptr; + _Right.nowDeletedElem = nullptr; } //------------------------------------------------------------------------------ @@ -160,13 +157,13 @@ FDPArray & FDPArray::operator = ( FDPArray && _Right ) } return (*this); } -#endif // C3D_STANDARD_CXX_11_PARTIAL + //------------------------------------------------------------------------------ // \ru деструктор массива \en destructor of array // --- template inline FDPArray::~FDPArray() { - PRECONDITION( nowDeletedElem == c3d_null ); + PRECONDITION( nowDeletedElem == nullptr ); destroy_array( *this ); } @@ -177,7 +174,7 @@ inline FDPArray::~FDPArray() { // --- template inline void FDPArray::Flush( DelType del ) { - PRECONDITION( nowDeletedElem == c3d_null ); + PRECONDITION( nowDeletedElem == nullptr ); if ( del==Delete || (del==defDelete && fDestroy) ) destroy_array( *this ); @@ -191,7 +188,7 @@ inline void FDPArray::Flush( DelType del ) { // --- template inline void FDPArray::Clear( typename FDPArray::TotalDestroyFunc fd ) { - PRECONDITION( nowDeletedElem == c3d_null ); + PRECONDITION( nowDeletedElem == nullptr ); size_t oldCount = RPArray::count; RPArray::count = 0; // \ru сначала приведем в порядок массив ... \en put an array in order at first ... @@ -250,9 +247,9 @@ inline Type* FDPArray::RemoveInd( size_t delIndex, DelType del ) { template inline Type * FDPArray::RemoveObj( Type * delObject, DelType del ) { - PRECONDITION( nowDeletedElem == c3d_null ); + PRECONDITION( nowDeletedElem == nullptr ); size_t i = find_in_array( *this, delObject ); - return (i != SYS_MAX_T) ? RemoveInd(i, del) : c3d_null; + return (i != SYS_MAX_T) ? RemoveInd(i, del) : nullptr; } @@ -295,9 +292,9 @@ inline Type* FDPArray::DestroyInd( size_t delIndex, typename FDPArray inline Type * FDPArray::DestroyObj( Type * delObject, typename FDPArray::DestroyFunc fd ) { - PRECONDITION( nowDeletedElem == c3d_null ); + PRECONDITION( nowDeletedElem == nullptr ); size_t i = find_in_array( *this, delObject ); - return ( i != SYS_MAX_T ) ? DestroyInd( i, fd ) : c3d_null; + return ( i != SYS_MAX_T ) ? DestroyInd( i, fd ) : nullptr; } @@ -334,7 +331,7 @@ void destroy_array( FDPArray & arr ) template bool set_Farray_size( FDPArray & arr, size_t newSize, bool clear ) { - PRECONDITION( arr.nowDeletedElem == c3d_null ); + PRECONDITION( arr.nowDeletedElem == nullptr ); if ( clear && arr.count ) arr.Flush(); // \ru будет arr.count = 0; \en arr.count will be equal 0; diff --git a/C3d/Include/templ_fdp_array_rw.h b/C3d/Include/templ_fdp_array_rw.h index 569ec30..39eb716 100644 --- a/C3d/Include/templ_fdp_array_rw.h +++ b/C3d/Include/templ_fdp_array_rw.h @@ -46,11 +46,11 @@ reader & operator >> ( reader & in, FDPArray & ref ) const Type ** parr = ref.GetAddr(); - if ( parr != c3d_null ) { + if ( parr != nullptr ) { size_t i; // \ru поочередное чтение объектов массива \en successive reading of objects from an array for ( i = 0; i < count && in.good(); i++ ) { - Type * el = c3d_null; + Type * el = nullptr; in >> el; parr[i] = el; } @@ -98,7 +98,7 @@ writer & operator << ( writer & out, const FDPArray & ref ) template reader & operator >> ( reader & in, FDPArray *& ptr ) { - ptr = c3d_null; + ptr = nullptr; if ( in.good() ) { if ( in.MathVersion() < 0x06000012L ) ptr = new FDPArray; @@ -168,7 +168,7 @@ static void TotalDestroy( Type ** arr, size_t count ) { size_t i = 0; for ( Type** parr = arr; i < count; i++, parr++ ) { Type *del = *parr; - *parr = c3d_null; // \ru Cначала обнулить ... \en Set to null at first... + *parr = nullptr; // \ru Cначала обнулить ... \en Set to null at first... delete del; // \ru ... потом удалить \en ... then delete } } diff --git a/C3d/Include/templ_ifc_array.h b/C3d/Include/templ_ifc_array.h index 6402f21..e0bdca0 100644 --- a/C3d/Include/templ_ifc_array.h +++ b/C3d/Include/templ_ifc_array.h @@ -50,7 +50,7 @@ public: typedef const value_type * pointer; public: - iterator() { m_curr = c3d_null; } + iterator() { m_curr = nullptr; } iterator( const stored_type * ptr ) { m_curr = ptr; } iterator( const iterator & iter ) { m_curr = iter.m_curr; } stored_type operator*() const { return *m_curr; } @@ -152,11 +152,9 @@ private: TEMPLATE_FRIEND reader & CALL_DECLARATION operator >> TEMPLATE_SUFFIX ( reader & in, IFC_Array & ref ); TEMPLATE_FRIEND writer & CALL_DECLARATION operator << TEMPLATE_SUFFIX ( writer & out, const IFC_Array & ref ); -#ifdef C3D_STANDARD_CXX_11_PARTIAL public: IFC_Array( IFC_Array && ); ///< \ru Конструктор перемещения массива. \en Constructor of an array moving. IFC_Array & operator = ( IFC_Array && ); ///< \ru Оператор перемещения массива. \en Operator of an array moving. -#endif // C3D_STANDARD_CXX_11_PARTIAL }; //------------------------------------------------------------------------------ @@ -165,14 +163,13 @@ public: template inline void IFCArray_Release( Type * & el ) { - if ( el != c3d_null && el->Release() == 0 ) + if ( el != nullptr && el->Release() == 0 ) { // AS K11 27.05.2008 Обнулять, только если объект действительно удален. - el = c3d_null; + el = nullptr; } } -#ifdef C3D_STANDARD_CXX_11_PARTIAL //------------------------------------------------------------------------------ // \ru Конструктор перемещения массива. \en Constructor of an array moving. // --- @@ -195,7 +192,6 @@ IFC_Array & IFC_Array::operator = ( IFC_Array && _Right ) } return (*this); } -#endif // C3D_STANDARD_CXX_11_PARTIAL //------------------------------------------------------------------------------ // \ru Деструктор массива. \en Destructor of array @@ -211,7 +207,7 @@ inline IFC_Array::~IFC_Array() // --- template inline void IFC_Array::Add( Type* ent ) { - if ( ent != c3d_null ) + if ( ent != nullptr ) ent->AddRef(); RPArray::Add( ent ); } @@ -222,7 +218,7 @@ inline void IFC_Array::Add( Type* ent ) { // --- template inline void IFC_Array::AddAt( stored_type ent, size_t ind ) { - if ( ent != c3d_null ) + if ( ent != nullptr ) ent->AddRef(); RPArray::AddAt( ent, ind ); } @@ -233,7 +229,7 @@ inline void IFC_Array::AddAt( stored_type ent, size_t ind ) { // --- template inline void IFC_Array::AddAfter( stored_type ent, size_t ind ) { - if ( ent != c3d_null ) + if ( ent != nullptr ) ent->AddRef(); RPArray::AddAfter( ent, ind ); } @@ -244,10 +240,10 @@ inline void IFC_Array::AddAfter( stored_type ent, size_t ind ) { // --- template inline void IFC_Array::SetAt( stored_type ent, size_t ind ) { - if ( ent != c3d_null ) + if ( ent != nullptr ) ent->AddRef(); Type * & el = RPArray::operator[](ind); - if ( el != c3d_null ) + if ( el != nullptr ) el->Release(); el = ent; } diff --git a/C3d/Include/templ_im_array.h b/C3d/Include/templ_im_array.h index 5e625e0..f55e029 100644 --- a/C3d/Include/templ_im_array.h +++ b/C3d/Include/templ_im_array.h @@ -73,8 +73,8 @@ public: void RemoveInd ( size_t delIndex, bool completely = true ); // \ru удалить элемент из массива \en delete an element from array void RemoveObj ( const size_t & delObject, bool completely = true ); // \ru удалить элемент из массива \en delete an element from array - Type * ReindexInd( size_t ind, size_t * = c3d_null ); // \ru заменить элемент с упорядочиванием по массиву \en replace element with sorting - size_t ReindexObj( Type * ent, size_t * = c3d_null ); // \ru заменить элемент с упорядочиванием по массиву \en replace element with sorting + Type * ReindexInd( size_t ind, size_t * = nullptr ); // \ru заменить элемент с упорядочиванием по массиву \en replace element with sorting + size_t ReindexObj( Type * ent, size_t * = nullptr ); // \ru заменить элемент с упорядочиванием по массиву \en replace element with sorting Type * ReindexMyInd( size_t ); // \ru заменить элемент с упорядочиванием по массиву \en replace element with sorting diff --git a/C3d/Include/templ_iterator.h b/C3d/Include/templ_iterator.h index 5377d21..787519f 100644 --- a/C3d/Include/templ_iterator.h +++ b/C3d/Include/templ_iterator.h @@ -53,9 +53,9 @@ public: /// \ru Сброс итератора. \en Reset iterator. virtual void Restart() { index = 0; } /// \ru Получить текущий элемент и сдвинуть итератор на следующий. \en Get the current element and move an iterator to the next. - virtual Type * operator ++(int) { return (index < items.Count()) ? items[index++] : c3d_null; } + virtual Type * operator ++(int) { return (index < items.Count()) ? items[index++] : nullptr; } /// \ru Получить текущий элемент \en Get the current element - virtual Type * operator() () const { return (index < items.Count()) ? items[index] : c3d_null; } + virtual Type * operator() () const { return (index < items.Count()) ? items[index] : nullptr; } private: // \ru не реализовано \en not implemented PointersArrayIterator & operator = ( const PointersArrayIterator & ); diff --git a/C3d/Include/templ_kdtree.h b/C3d/Include/templ_kdtree.h index ba3c8f4..5ffe68e 100644 --- a/C3d/Include/templ_kdtree.h +++ b/C3d/Include/templ_kdtree.h @@ -235,7 +235,7 @@ inline bool PriorityQueue::Initialize( size_t _maxSize ) elements = new Element[maxSize]; } catch ( ... ) { - elements = c3d_null; + elements = nullptr; maxSize = count = 0; C3D_CONTROLED_THROW; return false; diff --git a/C3d/Include/templ_lis_array.h b/C3d/Include/templ_lis_array.h index 208f252..0fa84d5 100644 --- a/C3d/Include/templ_lis_array.h +++ b/C3d/Include/templ_lis_array.h @@ -176,7 +176,7 @@ inline LiSArray & LiSArray::operator = ( const LiSArray & o ) set_array_size( *this, o.count ); // \ru обеспечить память на такое кол-во элементов \en allocate memory for the given number of elements count = o.count; C3D_ASSERT( count < 254 ); - if ( count > 0 && parr != c3d_null ) + if ( count > 0 && parr != nullptr ) memcpy( parr, o.parr, count * sizeof(Type) ); // SKIP_SA return *this; @@ -190,7 +190,7 @@ inline LiSArray & LiSArray::operator += ( const LiSArray & o ) { if ( o.count ) { set_array_size( *this, count + o.count ); // \ru обеспечить память на такое кол-во элементов \en allocate memory for the given number of elements - if ( parr != c3d_null ) + if ( parr != nullptr ) memcpy( parr+count, o.parr, o.count * sizeof(Type) ); count = (uint8)(count + o.count); diff --git a/C3d/Include/templ_multimap.h b/C3d/Include/templ_multimap.h index 07e72fa..852f823 100644 --- a/C3d/Include/templ_multimap.h +++ b/C3d/Include/templ_multimap.h @@ -94,7 +94,7 @@ private: }; template struct Null { // \ru Нуль указателей. \en Null of pointers. - static inline T* val() { return c3d_null; } + static inline T* val() { return nullptr; } }; // \ru LF_Linux: 25.03.11 g++ выдает ошибку на этот код - не использованы KeyType, ValType в полной специализации шаблона. // Однако непонятно, зачем нужна эта полная специализация - общая частичная специализация для тривиальных типов вполне подойдет. @@ -113,9 +113,9 @@ public: Pair * m_MaxPtr; public: - Iterator() : m_Ptr( c3d_null ), m_MaxPtr( c3d_null ) {} + Iterator() : m_Ptr( nullptr ), m_MaxPtr( nullptr ) {} Iterator( const Iterator & iter ) : m_Ptr( iter.m_Ptr ), m_MaxPtr( iter.m_MaxPtr ) {} - Iterator( const SArray & m_Pairs, const Pair & pair ) : m_Ptr( c3d_null ), m_MaxPtr( c3d_null ) + Iterator( const SArray & m_Pairs, const Pair & pair ) : m_Ptr( nullptr ), m_MaxPtr( nullptr ) { const size_t count = m_Pairs.Count(); if ( count > 0 ) { @@ -135,10 +135,10 @@ public: } } Iterator( const SArray & m_Pairs, const Iterator & iter1, const Iterator & iter2 ) // range - : m_Ptr( c3d_null ), m_MaxPtr( c3d_null ) + : m_Ptr( nullptr ), m_MaxPtr( nullptr ) { const size_t count = m_Pairs.Count(); - if ( count > 0 && iter1.m_Ptr != c3d_null ) { + if ( count > 0 && iter1.m_Ptr != nullptr ) { size_t idx1 = MultiMap::LowerBoundEx( m_Pairs, iter1.m_Ptr->m_key ); size_t temp = idx1; while ( temp < m_Pairs.Count() && m_Pairs[temp].m_key == iter1.m_Ptr->m_key ) { @@ -149,7 +149,7 @@ public: temp++; } size_t idx2 = SYS_MAX_T; - if ( iter2.m_Ptr != c3d_null ) { + if ( iter2.m_Ptr != nullptr ) { idx2 = MultiMap::UpperBoundEx( m_Pairs, iter2.m_Ptr->m_key ); if ( idx2 < m_Pairs.Count() ) { if ( idx2 > 0) diff --git a/C3d/Include/templ_p_array.h b/C3d/Include/templ_p_array.h index ddfc5cc..a58a047 100644 --- a/C3d/Include/templ_p_array.h +++ b/C3d/Include/templ_p_array.h @@ -52,13 +52,13 @@ public : PArray() : RPArray() , owns( true ) - , nowDeletedElem(c3d_null) + , nowDeletedElem(nullptr) {} /// \ru Конструктор. \en Constructor. PArray( size_t i_upper, uint16 i_delta = 1, bool shouldDelete = true )//, bool shouldNullSet = false ) : RPArray( i_upper, i_delta )//, shouldNullSet ) , owns( shouldDelete ) - , nowDeletedElem(c3d_null) + , nowDeletedElem(nullptr) {} /// \ru Деструктор. \en Destructor. virtual ~PArray(); @@ -221,7 +221,7 @@ private: // --- template inline PArray::~PArray() { - PRECONDITION( nowDeletedElem == c3d_null ); + PRECONDITION( nowDeletedElem == nullptr ); if ( owns ) destroy_array( *this ); } @@ -232,7 +232,7 @@ inline PArray::~PArray() { // --- template inline void PArray::Flush( DelType del ) { - PRECONDITION( nowDeletedElem == c3d_null ); + PRECONDITION( nowDeletedElem == nullptr ); if ( del==Delete || (del==defDelete && owns) ) destroy_array( *this ); @@ -289,10 +289,10 @@ inline Type * PArray::RemoveInd( size_t delIndex, DelType del ) { // --- template inline Type * PArray::RemoveObj( Type * delObject, DelType del ) { - PRECONDITION( nowDeletedElem == c3d_null ); // \ru временно, для отладки \en temporarily, for debugging + PRECONDITION( nowDeletedElem == nullptr ); // \ru временно, для отладки \en temporarily, for debugging size_t i = find_in_array( *this, delObject ); - return (i != SYS_MAX_T) ? RemoveInd(i, del) : c3d_null; + return (i != SYS_MAX_T) ? RemoveInd(i, del) : nullptr; } @@ -326,7 +326,7 @@ void destroy_array( PArray & arr ) { // --- template bool set_Parray_size( PArray & arr, size_t newSize, bool clear ) { - PRECONDITION( arr.nowDeletedElem == c3d_null ); // \ru временно \en temporarily + PRECONDITION( arr.nowDeletedElem == nullptr ); // \ru временно \en temporarily if ( clear && arr.count ) arr.Flush(); // \ru будет arr.count = 0; \en arr.count will be equal 0; @@ -354,7 +354,7 @@ bool set_Parray_size( PArray & arr, size_t newSize, bool clear ) { // --- //template //inline void PIArray::ForEachI( IteratorFunc func ) const { -// \ru C3D_ASSERT( PArray::nowDeletedElem == c3d_null ); // временно \en C3D_ASSERT( PArray::nowDeletedElem == c3d_null ); // temporarily +// \ru C3D_ASSERT( PArray::nowDeletedElem == nullptr ); // временно \en C3D_ASSERT( PArray::nowDeletedElem == nullptr ); // temporarily //#if !defined ( __INTEL_COMPILER ) /// for Intel C++ Compiler // for_each_in_array( *this, func ); //#endif // __INTEL_COMPILER @@ -366,7 +366,7 @@ bool set_Parray_size( PArray & arr, size_t newSize, bool clear ) { // --- template inline void PIArray::ForEachI( ParIteratorFunc func, void * pars ) const { - PRECONDITION( PArray::nowDeletedElem == c3d_null ); + PRECONDITION( PArray::nowDeletedElem == nullptr ); for_each_in_array( *this, func, pars ); } @@ -376,7 +376,7 @@ inline void PIArray::ForEachI( ParIteratorFunc func, void * pars ) const { // --- template inline size_t PIArray::FirstThatI( CompareFunc func, void * pars, size_t from ) const { - PRECONDITION( PArray::nowDeletedElem == c3d_null ); + PRECONDITION( PArray::nowDeletedElem == nullptr ); return first_that_in_array( *this, func, pars, from ); } @@ -386,7 +386,7 @@ inline size_t PIArray::FirstThatI( CompareFunc func, void * pars, size_t f // --- //template //inline void PMIArray::ForEach( IteratorMemFunc func ) const { -// \ru C3D_ASSERT( PArray::nowDeletedElem == c3d_null ); +// \ru C3D_ASSERT( PArray::nowDeletedElem == nullptr ); //#if !defined ( __INTEL_COMPILER ) /// for Intel C++ Compiler // for_each_in_array( *this, func ); //#endif // __INTEL_COMPILER @@ -398,7 +398,7 @@ inline size_t PIArray::FirstThatI( CompareFunc func, void * pars, size_t f // --- template inline void PMIArray::ForEach( ParIteratorMemFunc func, void * pars ) const { - PRECONDITION( PArray::nowDeletedElem == c3d_null ); + PRECONDITION( PArray::nowDeletedElem == nullptr ); for_each_in_array( *this, func, pars ); } @@ -408,7 +408,7 @@ inline void PMIArray::ForEach( ParIteratorMemFunc func, void * pars ) cons // --- template inline size_t PMIArray::FirstThat( CompareMemFunc func, void * pars, size_t from ) const { - PRECONDITION( PArray::nowDeletedElem == c3d_null ); + PRECONDITION( PArray::nowDeletedElem == nullptr ); return first_that_in_array( *this, func, pars, from ); } diff --git a/C3d/Include/templ_p_array_rw.h b/C3d/Include/templ_p_array_rw.h index 0757c5a..80ff170 100644 --- a/C3d/Include/templ_p_array_rw.h +++ b/C3d/Include/templ_p_array_rw.h @@ -45,7 +45,7 @@ reader & operator >> ( reader & in, PArray & ref ) const Type ** parr = ref.GetAddr(); - if ( parr != c3d_null ) + if ( parr != nullptr ) { ref.count = 0; // \ru Err #69421 сколько штук реально прочитано \en Err #69421 how many elements were actually counted @@ -53,7 +53,7 @@ reader & operator >> ( reader & in, PArray & ref ) // \ru поочередное чтение объектов массива \en successive reading of objects from an array for ( i = 0; i < count && in.good(); i++ ) { - Type * el = c3d_null; + Type * el = nullptr; in >> el; parr[i] = el; @@ -121,7 +121,7 @@ writer & operator << ( writer& out, const PArray & ref ) template reader & operator >> ( reader & in, PArray *& ptr ) { - ptr = c3d_null; + ptr = nullptr; if ( in.good() ) { if ( in.MathVersion() < 0x06000012L ) ptr = new PArray; diff --git a/C3d/Include/templ_pointer.h b/C3d/Include/templ_pointer.h index 4a42560..396bfa5 100644 --- a/C3d/Include/templ_pointer.h +++ b/C3d/Include/templ_pointer.h @@ -38,34 +38,32 @@ public: T & operator * () const { return *P; } operator T* () const { return P; } - int operator ! () const { return (P == c3d_null);} - T * Relinquish() {T * p = P; P = c3d_null; return p;} + int operator ! () const { return (P == nullptr);} + T * Relinquish() {T * p = P; P = nullptr; return p;} T * Get() { return P; } const T * Get() const { return P; } protected: TPointerBase( T * pointer ) : P(pointer) {} - TPointerBase() : P( c3d_null ) {} + TPointerBase() : P( nullptr ) {} protected: T * P; private: void * operator new( size_t ); // prohibit use of new - void operator delete( void * p ) { ((TPointerBase*)p)->P = c3d_null; } + void operator delete( void * p ) { ((TPointerBase*)p)->P = nullptr; } // СМВ К15 MVS 2012 private: TPointerBase( const TPointerBase & other ); -#ifdef C3D_STANDARD_CXX_11_PARTIAL public: - TPointerBase( TPointerBase && _Right ): P( _Right.P ) { _Right.P = c3d_null; } + TPointerBase( TPointerBase && _Right ): P( _Right.P ) { _Right.P = nullptr; } TPointerBase & operator = ( TPointerBase && _Right ) { if ( this != &_Right ) - { P = _Right.P; _Right.P = c3d_null; } + { P = _Right.P; _Right.P = nullptr; } return *this; } -#endif // C3D_STANDARD_CXX_11_PARTIAL }; @@ -98,8 +96,8 @@ public: } return *this; } - T * operator ->() { return TPointerBase::P; } // Could throw exception if P==c3d_null - const T * operator ->() const { return TPointerBase::P; } // Could throw exception if P==c3d_null + T * operator ->() { return TPointerBase::P; } // Could throw exception if P==nullptr + const T * operator ->() const { return TPointerBase::P; } // Could throw exception if P==nullptr // СМВ К15 MVS 2012 #ifndef __MOBILE_VERSION__ @@ -107,7 +105,6 @@ private: #endif // __MOBILE_VERSION__ TPointer( const TPointer & other ); -#ifdef C3D_STANDARD_CXX_11_PARTIAL public: TPointer( TPointer && _Right ) : TPointerBase( std::move(_Right) ) @@ -118,11 +115,10 @@ public: { delete TPointerBase::P; TPointerBase::P = _Right.P; - _Right.P = c3d_null; + _Right.P = nullptr; } return *this; } -#endif // C3D_STANDARD_CXX_11_PARTIAL }; @@ -160,7 +156,7 @@ public: } return *this; } - T * operator ->() { return TPointerBase::P; } // Could throw exception if P==c3d_null + T * operator ->() { return TPointerBase::P; } // Could throw exception if P==nullptr bool GetOwn() const { return own; } void SetOwn( bool val ) { own = val; } @@ -168,7 +164,6 @@ public: private: TOwnPointer( const TOwnPointer & other ); TOwnPointer & operator = ( const TOwnPointer & _Right ); -#ifdef C3D_STANDARD_CXX_11_PARTIAL public: TOwnPointer( TOwnPointer && _Right ) : TPointerBase( std::move(_Right) ) @@ -182,11 +177,10 @@ public: delete TPointerBase::P; TPointerBase::P = _Right.P; own = _Right.own; - _Right.P = c3d_null; + _Right.P = nullptr; } return *this; } -#endif // C3D_STANDARD_CXX_11_PARTIAL }; @@ -221,12 +215,11 @@ public: } return *this; } - T & operator []( size_t i ) { return TPointerBase::P[i]; } // Could throw exception if P==c3d_null + T & operator []( size_t i ) { return TPointerBase::P[i]; } // Could throw exception if P==nullptr // СМВ К15 MVS 2012 //private: // g++4.7 KUbuntu TAPointer( const TAPointer & other ); -#ifdef C3D_STANDARD_CXX_11_PARTIAL public: TAPointer(TAPointer && _Right) : TPointerBase( std::move(_Right) ) @@ -237,11 +230,10 @@ public: { delete[] TPointerBase::P; TPointerBase::P = _Right.P; - _Right.P = c3d_null; + _Right.P = nullptr; } return *this; } -#endif // C3D_STANDARD_CXX_11_PARTIAL }; @@ -273,12 +265,11 @@ public: delete[] P; return P = src.P; } - return c3d_null; + return nullptr; } char & operator []( size_t i ) { return P[i]; } -#ifdef C3D_STANDARD_CXX_11_PARTIAL public: TPointer( TPointer && _Right ) : TPointerBase( std::move(_Right) ) @@ -289,11 +280,10 @@ public: { delete[] P; P = _Right.P; - _Right.P = c3d_null; + _Right.P = nullptr; } return *this; } -#endif // C3D_STANDARD_CXX_11_PARTIAL }; diff --git a/C3d/Include/templ_psrt_array.h b/C3d/Include/templ_psrt_array.h index fcdd487..feeeed4 100644 --- a/C3d/Include/templ_psrt_array.h +++ b/C3d/Include/templ_psrt_array.h @@ -108,13 +108,13 @@ public: void DetachRng ( size_t, size_t ); // \ru отцепить из массива диапазон указателей \en detach a range of pointers from array typedef int (*PArSortCompFunc)( const Type **, const Type ** ); - void Sort ( PArSortCompFunc, PArrayReg * = c3d_null ); // \ru быстрая сортировка в любом диапазоне \en quick sorting in any range + void Sort ( PArSortCompFunc, PArrayReg * = nullptr ); // \ru быстрая сортировка в любом диапазоне \en quick sorting in any range void Sort ( const void *, PArSortRangeCompFunc, size_t armin = 0, size_t armax = SYS_MAX_T ); // \ru быстрая сортировка в заданном диапазоне \en quick sorting in a given range bool Find ( const Type *, PArSortAddress, size_t &, size_t armin = 0, size_t armax = SYS_MAX_T ); // \ru найти адрес в любом поле объекта \en find address in any field of object bool Find ( const size_t, PArSortAddress, size_t &, size_t armin = 0, size_t armax = SYS_MAX_T ); // \ru найти адрес в любом поле объекта \en find address in any field of object bool Find ( const void *, PArSortObj, size_t &, size_t armin = 0, size_t armax = SYS_MAX_T ); // \ru найти данный объект в сортированном массиве \en find a given object in sorted array - int FindObj ( const Type *, PArSortCompFunc, size_t &, PArrayReg * = c3d_null ) const; // \ru найти данный объект в сортированном массиве \en find a given object in sorted array + int FindObj ( const Type *, PArSortCompFunc, size_t &, PArrayReg * = nullptr ) const; // \ru найти данный объект в сортированном массиве \en find a given object in sorted array Type * AddSort ( Type *, PArSortCompFunc, size_t & ); // \ru добавить элемент в сортированном порядке \en add element in sorted order void Inverse (); // \ru инверсия массива \en inversion of array @@ -210,7 +210,7 @@ inline void PArraySort::Insert( size_t index, Type * ent ) template void PArraySort::RemoveRng( size_t startIndex, size_t countRng, DelType del ) { - C3D_ASSERT( PArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + C3D_ASSERT( PArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily // \ru если диапазон не пуст и индекс принадлежит массиву \en if range is not empty and index belongs to array if ( countRng && startIndex < PArray::count ) { @@ -226,14 +226,14 @@ void PArraySort::RemoveRng( size_t startIndex, size_t countRng, DelType de size_t i = 0; for( const Type ** parr = PArray::GetAddr() + startIndex; i < countRng; i++, parr++ ) { Type * d = (Type*)*parr; - *parr = c3d_null; // \ru сначала обнулим указатель ... \en set pointer to null ... + *parr = nullptr; // \ru сначала обнулим указатель ... \en set pointer to null ... C3D_ASSERT( !d || PArray::nowDeletedElem != d ); // \ru ЯТ - временно \en ЯТ - temporarily PArray::nowDeletedElem = d; delete d; - PArray::nowDeletedElem = c3d_null; + PArray::nowDeletedElem = nullptr; } } @@ -293,7 +293,7 @@ inline size_t PArraySort::CalculateDelta() template inline void PArraySort::CatchMemory() { - PRECONDITION( PArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + PRECONDITION( PArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily if ( PArray::upper == PArray::count ) set_Parray_size( *this, PArray::upper + CalculateDelta(), false/*clear*/ ); } @@ -305,7 +305,7 @@ inline void PArraySort::CatchMemory() template inline void PArraySort::Reserve( size_t n ) { - C3D_ASSERT( PArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + C3D_ASSERT( PArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily // \ru если требуется памяти больше, чем есть сейчас, и больше, чем оказалось бы \en if there is required more memory that exists at the moment and more than it would become // \ru при следующем захвате, то захватить ее \en on the next allocation then allocate it size_t space = PArray::upper - PArray::count; @@ -320,7 +320,7 @@ inline void PArraySort::Reserve( size_t n ) template inline void PArraySort::Sort( PArSortCompFunc fcmp, PArrayReg * arReg ) { - PRECONDITION( PArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + PRECONDITION( PArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily if ( PArray::count > 1 ) { // \ru если хотя бы два элемента в массиве \en if there are at least two elements in array typedef int (*QCompFunc)( const void*, const void* ); if ( !arReg ) { @@ -345,7 +345,7 @@ inline void PArraySort::Sort( PArSortCompFunc fcmp, PArrayReg * arReg ) template inline void PArraySort::Sort( const void * obj, PArSortRangeCompFunc fcmp, size_t armin, size_t armax ) { - C3D_ASSERT( PArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + C3D_ASSERT( PArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily if ( PArray::count > 1 ) { // \ru если хотя бы два элемента в массиве \en if there are at least two elements in array if ( armax > armin ) { // \ru если диапазон сортировки правильный \en if the sorting range is correct if ( armin < PArray::count - 1 ) { // \ru если минимальная граница меньше максимального элемента в массиве \en if the minimum bound is less than the maximum element in array @@ -364,7 +364,7 @@ inline void PArraySort::Sort( const void * obj, PArSortRangeCompFunc fcmp, template void PArraySort::SortRange( const void * obj, PArSortRangeCompFunc fcmp, size_t ilo, size_t ihi ) { - C3D_ASSERT( PArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + C3D_ASSERT( PArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily size_t lo = ilo; // \ru нижняя граница \en lower bound size_t hi = ihi; // \ru верхняя граница \en upper bound @@ -404,7 +404,7 @@ template inline bool PArraySort::Find( const size_t address, PArSortAddress fadr, size_t & findedAddress, size_t armin, size_t armax ) { - C3D_ASSERT( PArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + C3D_ASSERT( PArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily bool res = false; findedAddress = SYS_MAX_T/*OV_x64 -1*/; @@ -432,7 +432,7 @@ inline bool PArraySort::Find( const size_t address, PArSortAddress fadr, s template inline bool PArraySort::Find( const Type * member, PArSortAddress fadr, size_t & findedAddress, size_t armin, size_t armax ) { - C3D_ASSERT( PArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + C3D_ASSERT( PArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily return Find( fadr(member), fadr, findedAddress, armin, armax ); } @@ -443,7 +443,7 @@ inline bool PArraySort::Find( const Type * member, PArSortAddress fadr, si template inline bool PArraySort::Find( const void * obj, PArSortObj fobj, size_t & findedId, size_t armin, size_t armax ) { - C3D_ASSERT( PArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + C3D_ASSERT( PArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily bool res = false; @@ -472,7 +472,7 @@ inline bool PArraySort::Find( const void * obj, PArSortObj fobj, size_t & template bool PArraySort::FindObject( const void * obj, PArSortObj fobj, size_t & findedId, size_t armin, size_t armax ) { - C3D_ASSERT( PArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + C3D_ASSERT( PArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily bool res = false; // \ru флаг, который указывает существует ли искомый объект в массиве \en flag which specifies whether the required object is in array @@ -513,7 +513,7 @@ bool PArraySort::FindObject( const void * obj, PArSortObj fobj, size_t & f template bool PArraySort::FindAddress( const size_t address, PArSortAddress fadr, size_t & findedAddress, size_t armin, size_t armax ) { - C3D_ASSERT( PArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + C3D_ASSERT( PArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily bool res = false; // \ru флаг, который указывает существует ли искомый адресс в массиве \en flag which specifies whether the required address is in array size_t id = armax - armin; // \ru количество элементов в диапазоне \en the number of elements in range @@ -612,7 +612,7 @@ bool PArraySort::FindAddress( const size_t address, PArSortAddress fadr, s template int PArraySort::FindObj( const Type * obj, PArSortCompFunc fcmp, size_t & iFnd, PArrayReg * arReg ) const { - PRECONDITION( PArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + PRECONDITION( PArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily if ( (PArray::count) > 0 ) { size_t id = PArray::count; // \ru количество элементов в диапазоне \en the number of elements in range id--; @@ -686,7 +686,7 @@ int PArraySort::FindObj( const Type * obj, PArSortCompFunc fcmp, size_t & template inline Type * PArraySort::AddSort( Type * obj, PArSortCompFunc fcmp, size_t & iFnd ) { - PRECONDITION( PArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + PRECONDITION( PArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily int ires = FindObj( obj, fcmp, iFnd ); if ( (ires == -2) || (ires == 2) ) { iFnd = ( (ires == -2) ? 0 : PArray::count ); @@ -696,7 +696,7 @@ inline Type * PArraySort::AddSort( Type * obj, PArSortCompFunc fcmp, size_ if ( ires == -1 ) AddAt( obj, iFnd ); - return ires ? (*this)/*parr*/[iFnd] : c3d_null; + return ires ? (*this)/*parr*/[iFnd] : nullptr; } @@ -706,7 +706,7 @@ inline Type * PArraySort::AddSort( Type * obj, PArSortCompFunc fcmp, size_ template void PArraySort::Inverse() { - C3D_ASSERT( PArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + C3D_ASSERT( PArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily if ( PArray::count ) { size_t endI = PArray::count - 1; // \ru проверено count > 0 \en count > 0 validated diff --git a/C3d/Include/templ_rp_array.h b/C3d/Include/templ_rp_array.h index 5b37136..fae3197 100644 --- a/C3d/Include/templ_rp_array.h +++ b/C3d/Include/templ_rp_array.h @@ -105,7 +105,7 @@ public: /// \ru Оператор доступа по индексу. \en Access by index operator. Type *& operator []( size_t loc ) const; /// \ru Получить адрес последнего элемента в массиве. \en Get the address of the last element in the array. - Type * GetLast() const { return ((count > 0) ? parr[count-1] : (Type*)c3d_null); } + Type * GetLast() const { return ((count > 0) ? parr[count-1] : (Type*)nullptr); } public: // \ru унификация с вектором STL \en unification with STL vector bool empty() const { return count == 0; } @@ -167,11 +167,9 @@ public: void operator delete ( void *, size_t ); #endif // __DEBUG_MEMORY_ALLOCATE_FREE_ -#ifdef C3D_STANDARD_CXX_11_PARTIAL public: RPArray( RPArray && ); ///< \ru Конструктор перемещения массива. \en Constructor of an array moving. RPArray & operator = ( RPArray && ); ///< \ru Оператор перемещения массива. \en Operator of an array moving. -#endif // C3D_STANDARD_CXX_11_PARTIAL }; @@ -227,7 +225,6 @@ inline RPArray::RPArray( size_t i_upper, uint16 i_delta )//, bool shouldNu } -#ifdef C3D_STANDARD_CXX_11_PARTIAL //------------------------------------------------------------------------------ // \ru Конструктор перемещения массива. \en Constructor of an array moving. // --- @@ -241,7 +238,7 @@ inline RPArray::RPArray( RPArray && _Right ) _Right.count = 0; _Right.upper = 0; _Right.delta = 1; - _Right.parr = c3d_null; + _Right.parr = nullptr; } //------------------------------------------------------------------------------ @@ -257,7 +254,6 @@ RPArray & RPArray::operator = ( RPArray && _Right ) } return (*this); } -#endif // C3D_STANDARD_CXX_11_PARTIAL //------------------------------------------------------------------------------ @@ -691,7 +687,7 @@ bool set_Rarray_size( RPArray & arr, size_t newSize ) } catch ( ... ) { if ( newSize == 0 )// \ru Не смогли корректно удалить arr.parr. \en Failed to delete arr.parr correctly. - arr.parr = c3d_null; + arr.parr = nullptr; C3D_CONTROLED_THROW; return false; } diff --git a/C3d/Include/templ_rp_array_rw.h b/C3d/Include/templ_rp_array_rw.h index b34a3c2..a2feb6a 100644 --- a/C3d/Include/templ_rp_array_rw.h +++ b/C3d/Include/templ_rp_array_rw.h @@ -38,7 +38,7 @@ reader & operator >> ( reader & in, RPArray & ref ) const Type ** parr = ref.GetAddr(); - if ( parr != c3d_null ) { + if ( parr != nullptr ) { size_t i; // \ru поочередное чтение объектов массива \en successive reading of objects from an array for ( i = 0; i < count && in.good(); i++ ) { @@ -88,7 +88,7 @@ writer& operator << ( writer& out, const RPArray& ref ) { // --- template reader& operator >> ( reader& in, RPArray*& ptr ) { - ptr = c3d_null; + ptr = nullptr; if ( in.good() ) { uint8 existPtr; in >> existPtr; diff --git a/C3d/Include/templ_rp_stack.h b/C3d/Include/templ_rp_stack.h index a71110b..a46f170 100644 --- a/C3d/Include/templ_rp_stack.h +++ b/C3d/Include/templ_rp_stack.h @@ -31,7 +31,7 @@ public: public: void Push( Type & obj ); ///< \ru Добавить элемент в стек. \en Add an element to the stack. - Type * Pop(); ///< \ru Извлечь один элемент стека, если возвращаетя c3d_null, значит достигнуто дно стека. \en Retrieve one element from the stack, if c3d_null is returned then the bottom of stack is reached. + Type * Pop(); ///< \ru Извлечь один элемент стека, если возвращаетя nullptr, значит достигнуто дно стека. \en Retrieve one element from the stack, if nullptr is returned then the bottom of stack is reached. Type * Top() const; ///< \ru Верхний элемент стека. \en The top element of the stack. // \ru Оставить доступными следующие методы: \en Leave an access to the next methods: @@ -65,7 +65,7 @@ Type * RPStack::Pop() { RPArray::count--; return ret; } - return c3d_null; + return nullptr; } @@ -77,7 +77,7 @@ Type * RPStack::Top() const { if ( RPArray::count > 0 ) { return (*this)[RPArray::count-1]; } - return c3d_null; + return nullptr; } diff --git a/C3d/Include/templ_rw_operator.h b/C3d/Include/templ_rw_operator.h index aefad2e..93ed61f 100644 --- a/C3d/Include/templ_rw_operator.h +++ b/C3d/Include/templ_rw_operator.h @@ -21,7 +21,7 @@ template inline reader & ReadPtrByRefDCtor ( reader & in, Type *& ptr ) { - ptr = c3d_null; + ptr = nullptr; char exist; in >> exist; @@ -42,7 +42,7 @@ inline reader & ReadPtrByRefDCtor ( reader & in, Type *& ptr ) template inline reader & ReadPtrByRefRWCtor ( reader & in, Type *& ptr ) { - ptr = c3d_null; + ptr = nullptr; char exist; in >> exist; @@ -62,7 +62,7 @@ inline reader & ReadPtrByRefRWCtor ( reader & in, Type *& ptr ) template inline writer & WritePtrByRef ( writer & out, const Type * ptr ) { - char exist = (ptr != c3d_null); + char exist = (ptr != nullptr); out << exist; if ( exist ) diff --git a/C3d/Include/templ_s_array.h b/C3d/Include/templ_s_array.h index f9214db..448b6cb 100644 --- a/C3d/Include/templ_s_array.h +++ b/C3d/Include/templ_s_array.h @@ -393,7 +393,7 @@ inline void SArray::resize( size_t n, Type val ) if ( n > count ) { size_t n0 = count; if ( AddItems( n - count ) != 0 ) { - if ( parr != c3d_null ) { + if ( parr != nullptr ) { for ( size_t k = n0; k < n; ++k ) parr[k] = val; } @@ -423,7 +423,7 @@ template inline Type * SArray::Add() { if ( CatchMemory() ) return &parr[ count++ ]; - return c3d_null; + return nullptr; } @@ -444,7 +444,7 @@ inline Type * SArray::Add( const Type & ent ) { if ( CatchMemory() ) return static_cast( memcpy(static_cast(parr+count++), static_cast(&ent), sizeof(Type)) ); - return c3d_null; + return nullptr; } @@ -461,7 +461,7 @@ inline Type * SArray::AddAfter( const Type & ent, size_t index ) { return (Type*)memcpy( parr + index + 1, &ent, sizeof(Type) ); } - return c3d_null; + return nullptr; } @@ -483,7 +483,7 @@ inline Type * SArray::InsertInd( size_t index, const Type & ent ) { return (Type*)memcpy( parr + index, &ent, sizeof(Type) ); // \ru записываем новый элемент \en writing new element } - return c3d_null; + return nullptr; } @@ -501,7 +501,7 @@ inline Type * SArray::InsertInd( size_t index ) { return (Type*)( parr + index ); // \ru записываем новый элемент \en writing new element } - return c3d_null; + return nullptr; } @@ -825,7 +825,7 @@ bool set_array_size( SArray & arr, size_t newSize, bool clear ) #else //YYK V15 #77319 Type * p_tmp = newSize ? (Type*)new char[ newSize * sizeOfType ] : 0; #ifdef C3D_WINDOWS //_MSC_VER // win - Type * p_tmp = newSize ? (Type*)_aligned_malloc( newSize * sizeOfType, 16 ) : c3d_null; + Type * p_tmp = newSize ? (Type*)_aligned_malloc( newSize * sizeOfType, 16 ) : nullptr; #else Type * p_tmp = newSize ? (Type*)new char[newSize * sizeOfType] : 0; #endif // win @@ -857,7 +857,7 @@ bool set_array_size( SArray & arr, size_t newSize, bool clear ) } catch ( ... ) { if ( newSize == 0 ) { // \ru Не смогли корректно удалить arr.parr. \en Failed to delete arr.parr correctly. - arr.parr = c3d_null; + arr.parr = nullptr; arr.upper = newSize; } newSize = 0; // \ru т.к. ниже есть код с применением newSize \en because there is a code with using of newSize below diff --git a/C3d/Include/templ_s_array_rw.h b/C3d/Include/templ_s_array_rw.h index 5527664..a87747a 100644 --- a/C3d/Include/templ_s_array_rw.h +++ b/C3d/Include/templ_s_array_rw.h @@ -41,7 +41,7 @@ reader & operator >> ( reader & in, SArray & ref ) ref.SetSize( count, true/*clear*/ ); C3D_ASSERT( ref.upper >= count ); - if ( ref.GetAddr() != c3d_null ) { + if ( ref.GetAddr() != nullptr ) { size_t i; for ( i = 0; i < count && in.good(); i++ ) { @@ -95,7 +95,7 @@ writer& operator << ( writer& out, const SArray& ref ) { // template reader& operator >> ( reader& in, SArray*& ptr ) { - ptr = c3d_null; + ptr = nullptr; if ( in.good() ) { if ( in.MathVersion() < 0x06000012L ) ptr = new SArray; diff --git a/C3d/Include/templ_s_list.h b/C3d/Include/templ_s_list.h index de0460d..cb1aa5d 100644 --- a/C3d/Include/templ_s_list.h +++ b/C3d/Include/templ_s_list.h @@ -101,10 +101,10 @@ public: explicit List( bool ownsEl = true ) : owns( ownsEl ) , count( 0 ) - , first( c3d_null ) - , last( c3d_null ) - , nowDelItem( c3d_null ) - , nowDelElem( c3d_null ) + , first( nullptr ) + , last( nullptr ) + , nowDelItem( nullptr ) + , nowDelElem( nullptr ) {} virtual ~List(); @@ -138,21 +138,21 @@ public: void Split(); // \ru разомкнуть список \en split the list size_t Count() const { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); return count; } // \ru дать количество элементов в списке \en get the number of elements in the list size_t ReCalc() { return recalc_list(*this); }// \ru пересчитать количество элементов в списке \en count the number of elements in the list bool IsEmpty () const { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); return first == 0; } // \ru проверить, пустой ли список \en check whether the list is empty bool IsExist( const Type * d ) const { return is_exist_in_list(*this, d);} // \ru найти элемент по равенству указателей \en find an element by the equality of pointers Type * GetFirstData() const { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); PRECONDITION( first ); return first->data; } // \ru получить данные первого элемента списка \en get the data of the first element of the list Type * GetLastData() const { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); PRECONDITION( last ); return last->data; } // \ru получить данные последнего элемента списка \en get the data of the last element of the list protected: @@ -223,26 +223,26 @@ protected: ListItem * prev; public: - LIterator() : list( c3d_null ), curr( c3d_null ), prev( c3d_null ) {} - LIterator( const List & l ) : list( c3d_null ), curr( c3d_null ), prev( c3d_null ) { Set(l); } + LIterator() : list( nullptr ), curr( nullptr ), prev( nullptr ) {} + LIterator( const List & l ) : list( nullptr ), curr( nullptr ), prev( nullptr ) { Set(l); } LIterator( const LIterator &i ) : list( i.list ), curr( i.curr ), prev( i.prev ) {} virtual ~LIterator() {} void Set( const List& l ) { list = (List*)&l; Restart(); } - void Restart() { PRECONDITION(list); curr = list->first; prev = c3d_null; } - Type * GetData() const { return curr ? curr->data : c3d_null; } + void Restart() { PRECONDITION(list); curr = list->first; prev = nullptr; } + Type * GetData() const { return curr ? curr->data : nullptr; } Type * GetDataAndGo(); // \ru взять данные и продвинуть итератор \en take the data and move the iterator List * GetList() const { return list; } Type& operator* () const { PRECONDITION(curr && curr->data ); return *curr->data; } - Type* operator () () const { return curr ? curr->data : c3d_null; } + Type* operator () () const { return curr ? curr->data : nullptr; } operator ListItem* () const { return curr; } operator ListItem& () const { PRECONDITION(curr); return *curr; } - Type* operator ++() { prev = curr; if (curr) {curr=curr->next; return curr ? curr->data : c3d_null;} else return c3d_null; } - Type* operator ++(int) { prev = curr; if (curr) {Type* ret=curr->data; curr=curr->next; return ret;} else return c3d_null; } - Type* operator --() { PRECONDITION(list); curr=prev; prev=list->findPrev(prev); return curr ? curr->data : c3d_null; } - Type* operator --(int) { PRECONDITION(list); if (curr) {Type* ret=curr->data; curr=prev; prev=list->findPrev(prev); return ret;} else return c3d_null; } - Type* operator ->() { return curr ? curr->data : c3d_null; } + Type* operator ++() { prev = curr; if (curr) {curr=curr->next; return curr ? curr->data : nullptr;} else return nullptr; } + Type* operator ++(int) { prev = curr; if (curr) {Type* ret=curr->data; curr=curr->next; return ret;} else return nullptr; } + Type* operator --() { PRECONDITION(list); curr=prev; prev=list->findPrev(prev); return curr ? curr->data : nullptr; } + Type* operator --(int) { PRECONDITION(list); if (curr) {Type* ret=curr->data; curr=prev; prev=list->findPrev(prev); return ret;} else return nullptr; } + Type* operator ->() { return curr ? curr->data : nullptr; } bool operator == ( const LIterator &o ) const { return list==o.list && curr==o.curr; } bool operator != ( const LIterator &o ) const { return ! operator == (o); } @@ -258,7 +258,7 @@ public: void Remove( DelType = defDelete ); // \ru удалить элемент списка и продвинуть вперед \en delete an element from the list and move forward void Detach(); // \ru отсоединить элемент списка \en detach an element from the list - bool IsOK() const { return curr != c3d_null; } + bool IsOK() const { return curr != nullptr; } ListItem * Next() const { PRECONDITION(curr); return curr->next; } void Go() { prev = curr; if ( curr ) curr = curr->next; } void GoLast() { PRECONDITION(list); curr = list->last; prev = list->findPrev(curr); } @@ -279,7 +279,7 @@ public: //--- template inline List::~List() { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); Remove(); } @@ -290,7 +290,7 @@ inline List::~List() { //--- template inline void List::Add( Type* data ) { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); if ( last ) last = new ListItem( data, *last ); @@ -306,7 +306,7 @@ inline void List::Add( Type* data ) { //--- template inline void List::Add( Type* data, const Type* after ) { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); add_to_list( *this, data, after ); } @@ -318,7 +318,7 @@ inline void List::Add( Type* data, const Type* after ) { template inline void List::Add( Type * data, bool /*check*/ ) { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); if ( !IsExist(data) ) Add( data ); } @@ -330,8 +330,8 @@ inline void List::Add( Type * data, bool /*check*/ ) template inline void List::Add( ListItem & item ) { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); - item.next = c3d_null; + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); + item.next = nullptr; if ( last ) last->next = &item; @@ -350,7 +350,7 @@ inline void List::Add( ListItem & item ) template inline void List::AddAndEat( List & list ) { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); if ( list.first ) { @@ -365,7 +365,7 @@ inline void List::AddAndEat( List & list ) count += list.count; list.count = 0; - list.first = list.last = c3d_null; + list.first = list.last = nullptr; } } @@ -376,7 +376,7 @@ inline void List::AddAndEat( List & list ) template inline void List::Insert( Type * data ) { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); Insert( *new ListItem(data) ); } @@ -387,7 +387,7 @@ inline void List::Insert( Type * data ) template inline void List::Insert( ListItem & item ) { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); ListItem* old = first; @@ -407,7 +407,7 @@ inline void List::Insert( ListItem & item ) template inline void List::InsertAndEat( List & list ) { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); if ( list.first ) { if ( first ) { @@ -422,7 +422,7 @@ inline void List::InsertAndEat( List & list ) count += list.count; list.count = 0; - list.first = list.last = c3d_null; + list.first = list.last = nullptr; } } @@ -433,13 +433,13 @@ inline void List::InsertAndEat( List & list ) template inline bool List::Remove( Type * del, DelType shdl ) { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); if ( Detach(del) ) { if ( shdl==Delete || (shdl==defDelete && owns) ) { nowDelElem = del; delete del; - nowDelElem = c3d_null; + nowDelElem = nullptr; } return true; @@ -455,7 +455,7 @@ inline bool List::Remove( Type * del, DelType shdl ) template inline void List::Close() { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); if ( last ) last->next = first; } @@ -467,9 +467,9 @@ inline void List::Close() template inline void List::Split() { - PRECONDITION( nowDelItem == c3d_null && nowDelElem == c3d_null ); + PRECONDITION( nowDelItem == nullptr && nowDelElem == nullptr ); if ( last ) - last->next = c3d_null; + last->next = nullptr; } @@ -485,7 +485,7 @@ inline void List::Split() template inline Type * LIterator::GetDataAndGo() { - PRECONDITION( list && list->nowDelItem == c3d_null && list->nowDelElem == c3d_null ); + PRECONDITION( list && list->nowDelItem == nullptr && list->nowDelElem == nullptr ); if ( curr ) { Type * ret = curr->data; @@ -494,7 +494,7 @@ inline Type * LIterator::GetDataAndGo() return ret; } - return c3d_null; + return nullptr; } @@ -504,7 +504,7 @@ inline Type * LIterator::GetDataAndGo() template inline void LIterator::Add( Type * data ) { - PRECONDITION( list && list->nowDelItem == c3d_null && list->nowDelElem == c3d_null ); + PRECONDITION( list && list->nowDelItem == nullptr && list->nowDelElem == nullptr ); if ( list ) { if ( curr ) { @@ -525,7 +525,7 @@ inline void LIterator::Add( Type * data ) template inline void LIterator::AddAndEat( List & l ) { - PRECONDITION( list && list->nowDelItem == c3d_null && list->nowDelElem == c3d_null ); + PRECONDITION( list && list->nowDelItem == nullptr && list->nowDelElem == nullptr ); if ( list && l.first ) { @@ -539,7 +539,7 @@ inline void LIterator::AddAndEat( List & l ) list->count += l.count; l.count = 0; - l.first = l.last = c3d_null; + l.first = l.last = nullptr; } else list->AddAndEat( l ); // \ru съесть список l в конец данного списка \en destroy a list l and add it to the end of the given list @@ -553,7 +553,7 @@ inline void LIterator::AddAndEat( List & l ) template inline void LIterator::Insert( Type * data ) { - PRECONDITION( list && list->nowDelItem == c3d_null && list->nowDelElem == c3d_null ); + PRECONDITION( list && list->nowDelItem == nullptr && list->nowDelElem == nullptr ); if ( list ) { if ( prev ) { @@ -577,7 +577,7 @@ inline void LIterator::Insert( Type * data ) template inline void LIterator::InsertAndEat( List & l ) { - PRECONDITION( list && list->nowDelItem == c3d_null && list->nowDelElem == c3d_null ); + PRECONDITION( list && list->nowDelItem == nullptr && list->nowDelElem == nullptr ); if ( list && l.first ) { @@ -590,7 +590,7 @@ inline void LIterator::InsertAndEat( List & l ) list->count += l.count; l.count = 0; - l.first = l.last = c3d_null; + l.first = l.last = nullptr; } else list->InsertAndEat( l ); // \ru съесть список l в конец данного списка \en destroy a list l and add it to the end of the given list @@ -604,13 +604,13 @@ inline void LIterator::InsertAndEat( List & l ) template inline void LIterator::Remove( DelType shdl ) { - PRECONDITION( list && list->nowDelItem == c3d_null && list->nowDelElem == c3d_null ); + PRECONDITION( list && list->nowDelItem == nullptr && list->nowDelElem == nullptr ); if ( list && curr ) { if ( shdl==Delete || (shdl==defDelete && list->owns) ) { list->nowDelElem = curr->data; delete curr->data; - list->nowDelElem = c3d_null; + list->nowDelElem = nullptr; } Detach(); @@ -624,7 +624,7 @@ inline void LIterator::Remove( DelType shdl ) template inline void LIterator::Detach() { - PRECONDITION( list && list->nowDelItem == c3d_null && list->nowDelElem == c3d_null ); + PRECONDITION( list && list->nowDelItem == nullptr && list->nowDelElem == nullptr ); if ( list && curr ) { ListItem* next = curr->next; @@ -639,7 +639,7 @@ inline void LIterator::Detach() list->nowDelItem = curr; delete curr; - list->nowDelItem = c3d_null; + list->nowDelItem = nullptr; curr = next; prev = list->findPrev( curr ); @@ -652,7 +652,7 @@ inline void LIterator::Detach() template void add_to_list( List & list, Type * data, const Type * after ) { - PRECONDITION( list.nowDelItem == c3d_null && list.nowDelElem == c3d_null ); + PRECONDITION( list.nowDelItem == nullptr && list.nowDelElem == nullptr ); if ( after ) { ListItem *c = list.first; @@ -678,8 +678,8 @@ void add_to_list( List & list, Type * data, const Type * after ) template void add_to_list( List & to, List & from ) { - PRECONDITION( to.nowDelItem == c3d_null && to.nowDelElem == c3d_null ); - PRECONDITION( from.nowDelItem == c3d_null && from.nowDelElem == c3d_null ); + PRECONDITION( to.nowDelItem == nullptr && to.nowDelElem == nullptr ); + PRECONDITION( from.nowDelItem == nullptr && from.nowDelElem == nullptr ); ListItem *curr = from.first; while ( curr ) { @@ -696,8 +696,8 @@ void add_to_list( List & to, List & from ) template void insert_to_list( List & to, List & from ) { - PRECONDITION( to.nowDelItem == c3d_null && to.nowDelElem == c3d_null ); - PRECONDITION( from.nowDelItem == c3d_null && from.nowDelElem == c3d_null ); + PRECONDITION( to.nowDelItem == nullptr && to.nowDelElem == nullptr ); + PRECONDITION( from.nowDelItem == nullptr && from.nowDelElem == nullptr ); ListItem *curr = from.first; while ( curr ) { @@ -716,13 +716,13 @@ void insert_to_list( List & to, List & from ) template void remove_from_list( List & list, DelType shdl ) { - PRECONDITION( list.nowDelItem == c3d_null && list.nowDelElem == c3d_null ); + PRECONDITION( list.nowDelItem == nullptr && list.nowDelElem == nullptr ); bool del = shdl==Delete || (shdl==defDelete && list.owns); ListItem *first = list.first; - list.first = c3d_null; - list.last = c3d_null; + list.first = nullptr; + list.last = nullptr; list.count = 0; while ( first ) { ListItem *temp = first; @@ -731,12 +731,12 @@ void remove_from_list( List & list, DelType shdl ) if ( del ) { list.nowDelElem = temp->data; delete temp->data; - list.nowDelElem = c3d_null; + list.nowDelElem = nullptr; } list.nowDelItem = temp; delete temp; - list.nowDelItem = c3d_null; + list.nowDelItem = nullptr; } } @@ -747,11 +747,11 @@ void remove_from_list( List & list, DelType shdl ) template void remove_from_list_release( List & list ) { - PRECONDITION( list.nowDelItem == c3d_null && list.nowDelElem == c3d_null ); + PRECONDITION( list.nowDelItem == nullptr && list.nowDelElem == nullptr ); ListItem *first = list.first; - list.first = c3d_null; - list.last = c3d_null; + list.first = nullptr; + list.last = nullptr; list.count = 0; while ( first ) { ListItem *temp = first; @@ -760,11 +760,11 @@ void remove_from_list_release( List & list ) list.nowDelElem = temp->data; if ( temp->data ) temp->data->Release(); - list.nowDelElem = c3d_null; + list.nowDelElem = nullptr; list.nowDelItem = temp; delete temp; - list.nowDelItem = c3d_null; + list.nowDelItem = nullptr; } } @@ -776,8 +776,8 @@ template size_t remove_from_list( List & list, List & deList, DelType shdl ) { PRECONDITION( &list != &deList ); - PRECONDITION( list.nowDelItem == c3d_null && list.nowDelElem == c3d_null ); - PRECONDITION( deList.nowDelItem == c3d_null && deList.nowDelElem == c3d_null ); + PRECONDITION( list.nowDelItem == nullptr && list.nowDelElem == nullptr ); + PRECONDITION( deList.nowDelItem == nullptr && deList.nowDelElem == nullptr ); if ( !list.first || !deList.first ) // \ru какой-то из списков пуст ! \en one of the lists is empty ! return 0; @@ -788,7 +788,7 @@ size_t remove_from_list( List & list, List & deList, DelType shdl ) ListItem *curr = list.first; // \ru начнем сначала \en start from the beginning ListItem *prev = list.last; ListItem *del = deList.first; // \ru текущий удаляемый \en the current deleted - ListItem *pdel = c3d_null; // \ru предыдущий удаляемый \en the previous deleted + ListItem *pdel = nullptr; // \ru предыдущий удаляемый \en the previous deleted size_t deleted = 0; // \ru отцепленных 0 \en there are 0 detached while( del && list.first ) { // \ru есть еще пока чего удалять и откуда \en there are elements to delete @@ -801,8 +801,8 @@ size_t remove_from_list( List & list, List & deList, DelType shdl ) if ( list.first == list.last ) { // \ru если всего один элемент, то ничего не останется \en if there is only one element then nothing will be left list.count = 0; - list.first = c3d_null; - list.last = c3d_null; + list.first = nullptr; + list.last = nullptr; // \ru curr продвигать не нужно - все равно заканчиваем \en 'curr' should not be moved } else { @@ -820,12 +820,12 @@ size_t remove_from_list( List & list, List & deList, DelType shdl ) if ( willDel ) { // \ru если надо - удалим данные \en delete the data if it is necessary list.nowDelElem = condemned->data; delete condemned->data; - list.nowDelElem = c3d_null; + list.nowDelElem = nullptr; } list.nowDelItem = condemned; delete condemned; // \ru удалим квартиру \en delete condemned - list.nowDelItem = c3d_null; + list.nowDelItem = nullptr; deleted++; // \ru еще один удалили \en another one has been deleted break; @@ -849,7 +849,7 @@ size_t remove_from_list( List & list, List & deList, DelType shdl ) deList.nowDelItem = del; delete del; // \ru помним, что данные мы уже удалили \en remember that the data has already been deleted - deList.nowDelItem = c3d_null; + deList.nowDelItem = nullptr; deList.count--; } @@ -860,7 +860,7 @@ size_t remove_from_list( List & list, List & deList, DelType shdl ) } if ( list.last ) - list.last->next = c3d_null; // \ru разорвать список \en split the list + list.last->next = nullptr; // \ru разорвать список \en split the list return deleted; } @@ -870,10 +870,10 @@ size_t remove_from_list( List & list, List & deList, DelType shdl ) template bool detach_from_list( List & from, const Type * del ) { - PRECONDITION( from.nowDelItem == c3d_null && from.nowDelElem == c3d_null ); + PRECONDITION( from.nowDelItem == nullptr && from.nowDelElem == nullptr ); ListItem* curr = from.first; - ListItem* prev = c3d_null; + ListItem* prev = nullptr; while( curr ) { if ( curr->data == del ) { // \ru нашли \en found @@ -888,7 +888,7 @@ bool detach_from_list( List & from, const Type * del ) from.nowDelItem = curr; delete curr; - from.nowDelItem = c3d_null; + from.nowDelItem = nullptr; from.count--; return true; @@ -907,7 +907,7 @@ bool detach_from_list( List & from, const Type * del ) template size_t recalc_list( List & list ) { - PRECONDITION( list.nowDelItem == c3d_null && list.nowDelElem == c3d_null ); + PRECONDITION( list.nowDelItem == nullptr && list.nowDelElem == nullptr ); list.count = 0; ListItem *curr = list.first; @@ -923,7 +923,7 @@ size_t recalc_list( List & list ) template bool is_exist_in_list( const List & list, const Type * what ) { - PRECONDITION( list.nowDelItem == c3d_null && list.nowDelElem == c3d_null ); + PRECONDITION( list.nowDelItem == nullptr && list.nowDelElem == nullptr ); bool exist = false; ListItem * curr = list.first; @@ -940,7 +940,7 @@ bool is_exist_in_list( const List & list, const Type * what ) template ListItem * find_prev_in_list( const List & list, ListItem * now ) { - PRECONDITION( list.nowDelItem == c3d_null && list.nowDelElem == c3d_null ); + PRECONDITION( list.nowDelItem == nullptr && list.nowDelElem == nullptr ); if ( now ) { ListItem *tmp = list.first; @@ -949,7 +949,7 @@ ListItem * find_prev_in_list( const List & list, ListItem * no return tmp; } - return c3d_null; + return nullptr; } diff --git a/C3d/Include/templ_s_queue.h b/C3d/Include/templ_s_queue.h index 20b96ad..8dfe77e 100644 --- a/C3d/Include/templ_s_queue.h +++ b/C3d/Include/templ_s_queue.h @@ -113,17 +113,17 @@ private: // --- template SQueue::SQueue( size_t capacity ) - : data( c3d_null ) - , qlast( c3d_null ) - , qp1( c3d_null ) - , qp2( c3d_null ) + : data( nullptr ) + , qlast( nullptr ) + , qp1( nullptr ) + , qp2( nullptr ) { if ( capacity > 0 ) { try { data = new Type[capacity]; } catch ( const std::bad_alloc & ) { - data = c3d_null; + data = nullptr; throw; } } @@ -212,7 +212,7 @@ inline Type & SQueue::First() const template inline bool SQueue::IsFull() const { - return data == c3d_null || _IncPtr( qp2 ) == qp1; + return data == nullptr || _IncPtr( qp2 ) == qp1; } @@ -336,7 +336,7 @@ bool SQueue::_NewCapacity( size_t max_len, bool clear ) { try { delete [] data; - data = qlast = qp1 = qp2 = c3d_null; + data = qlast = qp1 = qp2 = nullptr; if ( max_len > 0 ) { data = new Type[max_len]; qlast = data + max_len - 1; @@ -344,7 +344,7 @@ bool SQueue::_NewCapacity( size_t max_len, bool clear ) } } catch ( ... ) { - data = qlast = qp1 = qp2 = c3d_null; + data = qlast = qp1 = qp2 = nullptr; C3D_CONTROLED_THROW; return false; } @@ -352,7 +352,7 @@ bool SQueue::_NewCapacity( size_t max_len, bool clear ) else { PRECONDITION( qp1 != qp2 && max_len>0 && clear == false ); // \ru Выражение обязано быть истинным \en The expression should be true - Type * n_data = c3d_null; + Type * n_data = nullptr; try { n_data = new Type[max_len]; if ( qp1 < qp2 ) // \ru Вариант без фрагментации \en A variant without fragmentation diff --git a/C3d/Include/templ_sfdp_array.h b/C3d/Include/templ_sfdp_array.h index 79d0277..fcd39b1 100644 --- a/C3d/Include/templ_sfdp_array.h +++ b/C3d/Include/templ_sfdp_array.h @@ -145,8 +145,8 @@ using RPArray::back; \en Find the index of the element using the comparison function. \details \ru Найти индекс элемента, используя функцию сравнения. \en Find the index of the element using the comparison function. - \return \ru Вернет точно найденный элемент или c3d_null, если элемент не найден. - \en Returns the found element or c3d_null, if element not found. + \return \ru Вернет точно найденный элемент или nullptr, если элемент не найден. + \en Returns the found element or nullptr, if element not found. */ Type * FindExact ( const Type & el ) const; @@ -240,7 +240,7 @@ inline SFDPArray::~SFDPArray() {} // --- template bool SFDPArray::Init( const SFDPArray & other ) { - PRECONDITION( FDPArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + PRECONDITION( FDPArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily Flush(); // \ru сбросить себя \en reset itself @@ -253,7 +253,7 @@ bool SFDPArray::Init( const SFDPArray & other ) { // --- template inline size_t SFDPArray::AddTry( Type& ent, Type *&found ) { - PRECONDITION( FDPArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + PRECONDITION( FDPArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily // \ru CatchMemory(); ЯТ \en CatchMemory(); ЯТ bool added = true; @@ -267,10 +267,10 @@ inline size_t SFDPArray::AddTry( Type& ent, Type *&found ) { // --- template inline bool SFDPArray::AddExact( Type& ent ) { - PRECONDITION( FDPArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + PRECONDITION( FDPArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily // \ru CatchMemory(); ЯТ \en CatchMemory(); ЯТ - Type * found = c3d_null; + Type * found = nullptr; bool added = true; add_to_array( *this, ent, found, added ); return ( &ent == found ); // \ru вернет true - добавлен, false - не добавлен \en if returns true then the element has been added, it has not been added otherwise @@ -283,10 +283,10 @@ inline bool SFDPArray::AddExact( Type& ent ) { // --- template inline bool SFDPArray::AddIfNotExist( Type& ent ) { - PRECONDITION( FDPArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + PRECONDITION( FDPArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily // \ru CatchMemory(); ЯТ \en CatchMemory(); ЯТ - Type * found = c3d_null; + Type * found = nullptr; bool added = true; add_to_array( *this, ent, found, added ); return ( added ); // \ru вернет true - добавлен, false - не добавлен \en if returns true then the element has been added, it has not been added otherwise @@ -298,7 +298,7 @@ inline bool SFDPArray::AddIfNotExist( Type& ent ) { // --- template inline size_t SFDPArray::FindNearest( const Type &el, Type *&found ) const { - PRECONDITION( FDPArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + PRECONDITION( FDPArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily return find_in_array( *this, el, found ); } @@ -309,10 +309,10 @@ inline size_t SFDPArray::FindNearest( const Type &el, Type *&found ) const // --- template inline Type * SFDPArray::FindExact( const Type &el ) const { - PRECONDITION( FDPArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily - Type * found = c3d_null; + PRECONDITION( FDPArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily + Type * found = nullptr; size_t foundInd = find_in_array( *this, el, found ); - return ( foundInd != SYS_MAX_T ) ? found : c3d_null; + return ( foundInd != SYS_MAX_T ) ? found : nullptr; } @@ -321,13 +321,13 @@ inline Type * SFDPArray::FindExact( const Type &el ) const { // --- template inline Type* SFDPArray::RemoveObj( Type *delObject, DelType del ) { - PRECONDITION( FDPArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + PRECONDITION( FDPArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily if ( !delObject ) - return c3d_null; + return nullptr; - Type * found = c3d_null; + Type * found = nullptr; size_t i = find_in_array( *this, *delObject, found ); - return ( i != SYS_MAX_T ) ? RemoveInd(i, del) : c3d_null; + return ( i != SYS_MAX_T ) ? RemoveInd(i, del) : nullptr; } @@ -338,7 +338,7 @@ template inline bool SFDPArray::DetachObj( const Type *delObject ) { if ( !delObject ) return false; - Type * found = c3d_null; + Type * found = nullptr; size_t i = find_in_array( *this, *delObject, found ); if ( i != SYS_MAX_T ) { @@ -355,8 +355,8 @@ inline bool SFDPArray::DetachObj( const Type *delObject ) { // --- template inline bool SFDPArray::IsExist( const Type &el ) const { - PRECONDITION( FDPArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily - Type * found = c3d_null; + PRECONDITION( FDPArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily + Type * found = nullptr; return find_in_array( *this, el, found ) != SYS_MAX_T; } @@ -513,7 +513,7 @@ size_t find_in_array( const SFDPArray& arr, const Type& el, Type *&found ) // --- template size_t SFDPArray::SearchIt ( size_t data, typename SFDPArray::SearchFunc fSearch, Type *&found ) const { - PRECONDITION( FDPArray::nowDeletedElem == c3d_null ); // \ru ЯТ - временно \en ЯТ - temporarily + PRECONDITION( FDPArray::nowDeletedElem == nullptr ); // \ru ЯТ - временно \en ЯТ - temporarily PRECONDITION( fSearch ); // \ru без функции сравнения массив бессмысленен \en the array is useless without comparison function if ( !FDPArray::count ) diff --git a/C3d/Include/templ_sfp_array.h b/C3d/Include/templ_sfp_array.h index 8cb8b3b..75c264c 100644 --- a/C3d/Include/templ_sfp_array.h +++ b/C3d/Include/templ_sfp_array.h @@ -180,10 +180,10 @@ inline Type * SFPArray::FindByKey( void * key, size_t & index ) { // --- template inline Type * SFPArray::RemoveObj( Type *delObject, DelType del ) { - PRECONDITION( PArray::nowDeletedElem == c3d_null ); // \ru Bременно, для отладки \en Temporarily, for debugging + PRECONDITION( PArray::nowDeletedElem == nullptr ); // \ru Bременно, для отладки \en Temporarily, for debugging ::qp_sort( *this, false ); size_t i = find_in_array( *this, delObject ); - return ( i != SYS_MAX_T ) ? RemoveInd(i, del) : c3d_null; + return ( i != SYS_MAX_T ) ? RemoveInd(i, del) : nullptr; } @@ -425,14 +425,14 @@ Type * find_from_array_by_key( const SFPArray & arr, void * key, size_t & res = (*arr.fSearch_m)( arr[0], key ); switch ( res ) { case 0 : index = 0; return arr[0]; - case 1 : index = SYS_MAX_T; return c3d_null; + case 1 : index = SYS_MAX_T; return nullptr; case -1 : break; } res = (*arr.fSearch_m)( arr[mxc], key ); switch ( res ) { case 0 : index = mxc; return arr[mxc]; - default : index = SYS_MAX_T; return c3d_null; + default : index = SYS_MAX_T; return nullptr; } } else { @@ -440,14 +440,14 @@ Type * find_from_array_by_key( const SFPArray & arr, void * key, size_t & for( size_t i = 0, count = (size_t)arr.count; i < count; i++ ) { switch ( (*arr.fSearch_m)( arr[i], key ) ) { case 0 : index = i; return arr[i]; - case 1 : index = SYS_MAX_T; return c3d_null; + case 1 : index = SYS_MAX_T; return nullptr; case -1 : break; } } } index = SYS_MAX_T; - return c3d_null; + return nullptr; } diff --git a/C3d/Include/templ_sp_array.h b/C3d/Include/templ_sp_array.h index 4f139d8..25848ae 100644 --- a/C3d/Include/templ_sp_array.h +++ b/C3d/Include/templ_sp_array.h @@ -150,9 +150,9 @@ inline bool SPArray::IsExist( const Type * el ) const { template inline Type * SPArray::RemoveObj( Type * delObject, DelType del ) { - PRECONDITION( PArray::nowDeletedElem == c3d_null ); // \ru Bременно, для отладки \en Temporarily, for debugging + PRECONDITION( PArray::nowDeletedElem == nullptr ); // \ru Bременно, для отладки \en Temporarily, for debugging size_t i = find_from_array( *this, delObject ); - return ( i != SYS_MAX_T ) ? RemoveInd( i, del ) : c3d_null; + return ( i != SYS_MAX_T ) ? RemoveInd( i, del ) : nullptr; } @@ -172,8 +172,8 @@ inline size_t SPArray::PossibleIndex( const Type * el, bool & isPresent ) template Type * add_to_array( SPArray & arr, Type * el, size_t & indexEl ) { - if ( el == c3d_null ) // \ru LF_Linux: добавил проверку на c3d_null \en LF_Linux: added a check for c3d_null - return c3d_null; + if ( el == nullptr ) // \ru LF_Linux: добавил проверку на nullptr \en LF_Linux: added a check for nullptr + return nullptr; size_t mx = arr.count - 1; size_t mxc = mx; size_t mn = 0; @@ -286,7 +286,7 @@ size_t find_from_array_spec( const SPArray & arr, const Type * el, bool & { isPresent = false; - if ( el == c3d_null ) // \ru LF_Linux: добавил проверку на c3d_null \en LF_Linux: added a check for c3d_null + if ( el == nullptr ) // \ru LF_Linux: добавил проверку на nullptr \en LF_Linux: added a check for nullptr return SYS_MAX_T; if ( !arr.count || *el < *arr/*.parr*/[0] ) @@ -355,7 +355,7 @@ size_t find_from_array_spec( const SPArray & arr, const Type * el, bool & template size_t find_from_array( const SPArray & arr, const Type * el ) { - if ( el == c3d_null ) // \ru LF_Linux: добавил проверку на c3d_null \en LF_Linux: added a check for c3d_null + if ( el == nullptr ) // \ru LF_Linux: добавил проверку на nullptr \en LF_Linux: added a check for nullptr return SYS_MAX_T; // \ru общий случай - элементов больше 11 //LF_Linux: откуда 11??? \en the common case - the number of elements is more than 11 //LF_Linux: why 11?? if ( arr.count > 11 ) { diff --git a/C3d/Include/templ_sparse_array2.h b/C3d/Include/templ_sparse_array2.h index bc6cbf9..34e286a 100644 --- a/C3d/Include/templ_sparse_array2.h +++ b/C3d/Include/templ_sparse_array2.h @@ -506,7 +506,7 @@ inline SparseArray2 * SparseArray2::Create( size_t lsz, size_t csz ) { if ( lsz*csz <= c3d::MATRIX_MAX_COUNT ) return new SparseMatrix( lsz, csz ); - return c3d_null; + return nullptr; } @@ -554,7 +554,7 @@ inline bool SparseArray2::SetElem( size_t ln, size_t cn, const Type & item template inline SparseArray2 & SparseArray2::SetZero() { - std::for_each( data.begin(), data.end(), c3d_mem_fun_ref( &SparseRow::Clear ) ); + std::for_each( data.begin(), data.end(), std::mem_fn( &SparseRow::Clear ) ); return *this; } @@ -607,7 +607,7 @@ inline bool SparseArray2::NzIndices( size_t ln, const NumberRange & search template inline void SparseArray2::NzUpdate() { - std::for_each( data.begin(), data.end(), c3d_mem_fun_ref( &SparseRow::NzUpdate ) ); + std::for_each( data.begin(), data.end(), std::mem_fn( &SparseRow::NzUpdate ) ); } diff --git a/C3d/Include/templ_sptr.h b/C3d/Include/templ_sptr.h index 81d5924..2349721 100644 --- a/C3d/Include/templ_sptr.h +++ b/C3d/Include/templ_sptr.h @@ -15,14 +15,14 @@ //------------------------------------------------------------------------------ -/** \brief \ru Отладочная проверка на c3d_null. - \en Debug check for c3d_null. \~ - \details \ru Отладочная проверка на c3d_null. \n - \en Debug check for c3d_null. \n \~ +/** \brief \ru Отладочная проверка на nullptr. + \en Debug check for nullptr. \~ + \details \ru Отладочная проверка на nullptr. \n + \en Debug check for nullptr. \n \~ \ingroup Base_Tools_SmartPointers */ // --- -#define NULL_CHECK PRECONDITION( m_pI != c3d_null ); +#define NULL_CHECK PRECONDITION( m_pI != nullptr ); //------------------------------------------------------------------------------ @@ -42,18 +42,18 @@ class SPtr public: /// \ru Конструктор. \en Constructor. - SPtr () : m_pI( c3d_null ) {} + SPtr () : m_pI( nullptr ) {} /// \ru Конструктор по указателю. \en Constructor by pointer. explicit SPtr ( T * elem ) { - if ( (m_pI = elem) != c3d_null ) + if ( (m_pI = elem) != nullptr ) m_pI->AddRef(); } /// \ru Конструктор копирования. \en Copy constructor. - SPtr( const SPtr & ptr ) : m_pI( c3d_null ) { assign(ptr.m_pI); } // SKIP_SA + SPtr( const SPtr & ptr ) : m_pI( nullptr ) { assign(ptr.m_pI); } // SKIP_SA /// \ru Конструктор по совместимому указателю \en Constructor by compatible pointer template - SPtr( const SPtr<_T> & ptr ) : m_pI( c3d_null ) { assign(ptr.get()); } + SPtr( const SPtr<_T> & ptr ) : m_pI( nullptr ) { assign(ptr.get()); } /// \ru Деструктор. \en Destructor. ~SPtr() { reset(); } @@ -103,15 +103,14 @@ public: /// \ru Функция присваивания указателем. \en A function of assignment by pointer. SPtr & assign( T * elem ); /// \ru Функция освобождения объекта. \en A function of release an object. - SPtr & reset( void ) { if( m_pI != c3d_null ) { m_pI->Release(); m_pI = c3d_null; } return *this; } // SKIP_SA + SPtr & reset( void ) { if( m_pI != nullptr ) { m_pI->Release(); m_pI = nullptr; } return *this; } // SKIP_SA /// \ru Функция доступа к элементу данных. \en A function of access to data element. T * get() const { return m_pI; } // SKIP_SA /// \ru Функция отсоединяет объект. \en A function detaches an object. - T * detach() { T * obj = m_pI; m_pI = c3d_null; if ( obj != c3d_null ) obj->DecRef(); return obj; } // SKIP_SA + T * detach() { T * obj = m_pI; m_pI = nullptr; if ( obj != nullptr ) obj->DecRef(); return obj; } // SKIP_SA /// \ru Нулевой указатель? \en Is null pointer? - bool is_null() const { return (( c3d_null == m_pI ) ? true : false ); } + bool is_null() const { return (( nullptr == m_pI ) ? true : false ); } -#ifdef C3D_STANDARD_CXX_11_PARTIAL public: /// \ru Конструктор перемещения. \en Moving constructor. SPtr( SPtr && src ) : m_pI ( src.m_pI ) @@ -126,7 +125,6 @@ public: src.m_pI = tmp; return *this; } -#endif // C3D_STANDARD_CXX_11_PARTIAL }; @@ -138,8 +136,8 @@ inline SPtr & SPtr::assign( T * elem ) { if ( m_pI != elem ) { - if ( elem != c3d_null ) { elem->AddRef(); } // SKIP_SA - if ( m_pI != c3d_null ) { m_pI->Release(); } // SKIP_SA + if ( elem != nullptr ) { elem->AddRef(); } // SKIP_SA + if ( m_pI != nullptr ) { m_pI->Release(); } // SKIP_SA m_pI = elem; } return *this; @@ -150,10 +148,10 @@ inline SPtr & SPtr::assign( T * elem ) /** \brief \ru Автоматическая ссылка на объекты с подсчетом ссылок. \en Smart reference to objects with reference counter. \~ \details \ru Автоматическая ссылка (smart reference) на объекты с подсчетом ссылок. - Фактически тоже самое, что и SPtr, но без возможности равенства c3d_null.\n + Фактически тоже самое, что и SPtr, но без возможности равенства nullptr.\n Требует от параметра шаблона реализации функций AddRef() и Release(). \n \en Smart reference to objects with reference counter. - Actually it is the same as SPtr but without the possibility of equality to c3d_null \n + Actually it is the same as SPtr but without the possibility of equality to nullptr \n It requires Implementation of functions AddRef() and Release() from the template parameter. \n \~ \ingroup Base_Tools_SmartPointers */ diff --git a/C3d/Include/templ_stack.h b/C3d/Include/templ_stack.h index 4acf739..9fbec5b 100644 --- a/C3d/Include/templ_stack.h +++ b/C3d/Include/templ_stack.h @@ -28,7 +28,7 @@ */ // --- template -class SStack c3d_final: private SArray +class SStack final: private SArray { public: /// \ru Конструктор. \en Constructor. @@ -37,7 +37,7 @@ public: {} public: void Push( const Type & obj ); ///< \ru Добавить элемент в стек. \en Add an element to the stack. - Type & Pop(); ///< \ru Извлечь один элемент стека, если возвращаетя c3d_null, значит достигнуто дно стека. \en Retrieve one element from the stack, if c3d_null is returned then the bottom of stack is reached. + Type & Pop(); ///< \ru Извлечь один элемент стека, если возвращаетя nullptr, значит достигнуто дно стека. \en Retrieve one element from the stack, if nullptr is returned then the bottom of stack is reached. Type & Top() const; ///< \ru Верхний элемент стека (последний внесенный). \en The top element of the stack (the last added). // \ru Оставить доступными следующие методы: \en Leave an access to the next methods: diff --git a/C3d/Include/templ_t_list.h b/C3d/Include/templ_t_list.h index e6d90f8..e9df91d 100644 --- a/C3d/Include/templ_t_list.h +++ b/C3d/Include/templ_t_list.h @@ -86,7 +86,7 @@ writer& operator << ( writer& out, const List& ref ) { // template reader& operator >> ( reader& in, List*& ptr ) { - ptr = c3d_null; + ptr = nullptr; if ( in.good() ) { if ( in.MathVersion() < 0x06000012L ) diff --git a/C3d/Include/tool_log.h b/C3d/Include/tool_log.h index 6a385e5..3cea65b 100644 --- a/C3d/Include/tool_log.h +++ b/C3d/Include/tool_log.h @@ -156,7 +156,7 @@ public: #ifdef C3D_DEBUG // \ru Параметр enable определяет, стартовать ли логирование. // \en The enable parameter defines whether to start logging. - LogHelper( bool enable = true, const TCHAR* file = c3d_null ); + LogHelper( bool enable = true, const TCHAR* file = nullptr ); // \ru Если в конструкторе было указано имя файла, то деструктор записывает накопленный лог в файл. // \en If a file name was defined in the contructor, the destructor writes the collected log to the file. \~ diff --git a/C3d/Include/tool_memory_debug.h b/C3d/Include/tool_memory_debug.h index ac4e5cd..66fe4ee 100644 --- a/C3d/Include/tool_memory_debug.h +++ b/C3d/Include/tool_memory_debug.h @@ -66,7 +66,7 @@ public: virtual void ReallocArrayStatistic( void * oldParr, size_t oldSize, void * newParr, size_t newSize, uint arrayType ) = 0; /// \ru Отчет по статистике изменений размера массива. \en A report by the statistics of array size changes. \~ \ingroup Base_Tools - virtual void ReallocReport( bool clear, const char * title = c3d_null ) = 0; + virtual void ReallocReport( bool clear, const char * title = nullptr ) = 0; }; @@ -242,7 +242,7 @@ inline void * ReallocArraySize( void * arr_parr, size_t newBytesCount, bool ) void * tmp_parr = ::realloc( arr_parr, newBytesCount ); #endif - PRECONDITION( newBytesCount == 0 || tmp_parr != c3d_null ); // \ru проверка на нехватку памяти в массивах \en check the memory deficit in arrays + PRECONDITION( newBytesCount == 0 || tmp_parr != nullptr ); // \ru проверка на нехватку памяти в массивах \en check the memory deficit in arrays #ifdef __MEMSET_USED_FREE_HEAP_HEAR__ if ( clear ) { diff --git a/C3d/Include/tool_multithreading.h b/C3d/Include/tool_multithreading.h index 2ae41f6..bf6667b 100644 --- a/C3d/Include/tool_multithreading.h +++ b/C3d/Include/tool_multithreading.h @@ -222,19 +222,19 @@ class CacheManager : public CacheCleaner { bool _valid; List( unsigned int id, T* data ) : _id( id ), - _data( data != c3d_null ? data : new T() ), // Always _data != c3d_null. - _next( c3d_null ), + _data( data != nullptr ? data : new T() ), // Always _data != nullptr. + _next( nullptr ), _valid( true ) {} ~List() { - if ( _data != c3d_null ) + if ( _data != nullptr ) delete _data; - _data = c3d_null; - if ( _next != c3d_null ) // Also deletes linked List. + _data = nullptr; + if ( _next != nullptr ) // Also deletes linked List. delete _next; - _next = c3d_null; + _next = nullptr; } private: - List() : _id( 0 ), _data( c3d_null ), _next( c3d_null ) {} + List() : _id( 0 ), _data( nullptr ), _next( nullptr ) {} }; private: @@ -310,9 +310,9 @@ private: // --- template inline CacheManager::CacheManager( bool createLock ) - : longTerm ( c3d_null ) - , tcache ( c3d_null ) - , lock ( c3d_null ) + : longTerm ( nullptr ) + , tcache ( nullptr ) + , lock ( nullptr ) { if ( createLock ) lock = new CommonMutex(); @@ -325,11 +325,11 @@ inline CacheManager::CacheManager( bool createLock ) // --- template inline CacheManager::CacheManager( const CacheManager & item ) - : longTerm ( c3d_null ) - , tcache ( c3d_null ) - , lock ( c3d_null ) + : longTerm ( nullptr ) + , tcache ( nullptr ) + , lock ( nullptr ) { - if ( item.longTerm != c3d_null ) + if ( item.longTerm != nullptr ) longTerm = new T( *item.longTerm ); #ifndef CACHE_DELETE_LOCK lock = new CommonMutex(); @@ -344,9 +344,9 @@ template inline CacheManager::~CacheManager() { CleanAll( false, true ); - if ( longTerm != c3d_null ) + if ( longTerm != nullptr ) delete longTerm; - if ( lock != c3d_null ) + if ( lock != nullptr ) delete lock; } @@ -360,7 +360,7 @@ template inline T* CacheManager::LongTerm () { try { - if ( longTerm == c3d_null ) + if ( longTerm == nullptr ) longTerm = new T(); } catch ( const std::bad_alloc & ) { @@ -376,10 +376,10 @@ inline T* CacheManager::LongTerm () template inline CommonMutex* CacheManager::GetLockHard() { - if ( lock == c3d_null ) { + if ( lock == nullptr ) { CommonMutex* ll = GetGlobalLock(); ll->lock(); - if ( lock == c3d_null ) + if ( lock == nullptr ) lock = new CommonMutex(); ll->unlock(); } @@ -394,27 +394,27 @@ template inline T * CacheManager::operator()() { // \ru Создать данные по данным кэша главного потока. \en Create data using the data of the main thread cache. -#define INIT_BY_LONGTERM ( longTerm != c3d_null ? new T( *longTerm ) : new T() ) +#define INIT_BY_LONGTERM ( longTerm != nullptr ? new T( *longTerm ) : new T() ) if ( !IsSafeMultithreading() || !IsInParallel() ) { CleanAll( true ); return LongTerm(); } - T * res = c3d_null; + T * res = nullptr; unsigned int threadKey = GetThreadKey(); if ( FatalErrorHandler::HasError() ) return LongTerm(); - if ( tcache == c3d_null ) { + if ( tcache == nullptr ) { // \ru Подписаться на сборку мусора, так как используются многопоточные кэши. // \en Subscribe on garbage collection because using multithreaded caches. SubcribeOnCleaning(); { // \ru Используется блокировка при изменении списка кэшей. \en Use lock when changing the cache list. ScopedLock sl( GetLock(), false ); - if ( tcache == c3d_null ) { + if ( tcache == nullptr ) { try { tcache = new List( threadKey, INIT_BY_LONGTERM ); return tcache->_data; @@ -428,7 +428,7 @@ inline T * CacheManager::operator()() } List* entry = tcache; - while( entry != c3d_null ) { + while( entry != nullptr ) { if ( entry->_id == threadKey ) { if ( !entry->_valid ) { try { @@ -448,7 +448,7 @@ inline T * CacheManager::operator()() } // \ru Если кэш не найден в списке, 'entry' содержит последний (на данный момент) элемент в списке. // \en If cache not found in the list, 'entry' contains the last element in the list (at that point). - if ( entry->_next == c3d_null ) + if ( entry->_next == nullptr ) break; entry = entry->_next; } @@ -460,7 +460,7 @@ inline T * CacheManager::operator()() List * newList = new List( threadKey, res ); // \ru На данный момент, entry может быть не последним элементом в списке. // \en At that point, entry could be not a last element in the list. - while ( entry->_next != c3d_null ) { + while ( entry->_next != nullptr ) { entry = entry->_next; } entry->_next = newList; @@ -483,10 +483,10 @@ inline T * CacheManager::operator()() template inline void CacheManager::Reset( bool resetLongTerm ) { - if ( tcache != c3d_null ) { + if ( tcache != nullptr ) { ScopedLock sl( GetLock() ); List* entry = tcache; - while ( entry != c3d_null ) { + while ( entry != nullptr ) { entry->_valid = false; entry = entry->_next; } @@ -494,13 +494,13 @@ inline void CacheManager::Reset( bool resetLongTerm ) if ( resetLongTerm ) { ScopedLock sl( GetLock() ); delete longTerm; - longTerm = c3d_null; + longTerm = nullptr; // \ru Если нет параллельности, удаляется блокировка. \en If no parallelism, delete the lock. #ifdef CACHE_DELETE_LOCK if ( !sl.IsLocked() ) { - if ( lock != c3d_null ) + if ( lock != nullptr ) delete lock; - lock = c3d_null; + lock = nullptr; } #endif } @@ -514,16 +514,16 @@ template inline void CacheManager::CleanAll( bool doPostproc, bool force ) { if ( force || CacheCleanupAllowed() ) { - if ( tcache != c3d_null ) { + if ( tcache != nullptr ) { if ( doPostproc ) Postprocess(); delete tcache; - tcache = c3d_null; + tcache = nullptr; } #ifdef CACHE_DELETE_LOCK - if ( lock != c3d_null ) { + if ( lock != nullptr ) { delete lock; - lock = c3d_null; + lock = nullptr; } #endif if ( IsSubscribed() ) @@ -538,11 +538,11 @@ inline void CacheManager::CleanAll( bool doPostproc, bool force ) template inline void CacheManager::Postprocess() { - if ( tcache != c3d_null ) { + if ( tcache != nullptr ) { LongTerm(); // Create longTerm List * entry = tcache; // Incorporate thread data into main thread data. - while ( entry != c3d_null && longTerm->MergeWith( entry->_data ) ) { + while ( entry != nullptr && longTerm->MergeWith( entry->_data ) ) { entry = entry->_next; } } @@ -555,18 +555,18 @@ inline void CacheManager::Postprocess() template inline void CacheManager::HardReset() { - if ( tcache != c3d_null ) { + if ( tcache != nullptr ) { delete tcache; - tcache = c3d_null; + tcache = nullptr; } - if ( longTerm != c3d_null ) { + if ( longTerm != nullptr ) { delete longTerm; - longTerm = c3d_null; + longTerm = nullptr; } - if ( lock != c3d_null ) { + if ( lock != nullptr ) { delete lock; - lock = c3d_null; + lock = nullptr; } } diff --git a/C3d/Include/tool_mutex.h b/C3d/Include/tool_mutex.h index 571ed92..2cc0f82 100644 --- a/C3d/Include/tool_mutex.h +++ b/C3d/Include/tool_mutex.h @@ -421,8 +421,8 @@ public: */ void Unlock() const; - // \ru Выдать указатель на объект мьютекса. Возращает c3d_null, если параллельности нет. Для использования в ScopedLock. - // \en Get a pointer to the mutex object. Return c3d_null if no parallelism. For use in ScopedLock. + // \ru Выдать указатель на объект мьютекса. Возращает nullptr, если параллельности нет. Для использования в ScopedLock. + // \en Get a pointer to the mutex object. Return nullptr if no parallelism. For use in ScopedLock. CommonMutex * GetLock() const; }; @@ -453,8 +453,8 @@ public: */ void Unlock() const; - /** \brief \ru Выдать указатель на объект мьютекса. Возращает c3d_null, если параллельности нет. Для использования в ScopedLock. - \en Get a pointer to the mutex object. Return c3d_null if no parallelism. For use in ScopedLock. + /** \brief \ru Выдать указатель на объект мьютекса. Возращает nullptr, если параллельности нет. Для использования в ScopedLock. + \en Get a pointer to the mutex object. Return nullptr if no parallelism. For use in ScopedLock. */ CommonRecursiveMutex * GetLock() const; }; diff --git a/C3d/Include/tool_quick_sort.h b/C3d/Include/tool_quick_sort.h index 5750ddb..22832b9 100644 --- a/C3d/Include/tool_quick_sort.h +++ b/C3d/Include/tool_quick_sort.h @@ -222,17 +222,17 @@ void Swap( Type* arr, size_t ind1, size_t ind2 ) Analog of strcmp for strings, supplied by user for comparing the array elements. Accepts 2 pointers to elements and returns: negative value, if 1<2; 0, if 1=2; positive value, if 1>2. \~ - \param[out] base2 - \ru Указатель на второй массив (может быть c3d_null). - \en Pointer to the second array (could be c3d_null). \~ - \param[out] base3 - \ru Указатель на третий массив (может быть c3d_null). - \en Pointer to the third array (could be c3d_null). \~ + \param[out] base2 - \ru Указатель на второй массив (может быть nullptr). + \en Pointer to the second array (could be nullptr). \~ + \param[out] base3 - \ru Указатель на третий массив (может быть nullptr). + \en Pointer to the third array (could be nullptr). \~ \ingroup Base_Algorithms */ //--- template void InsertSort( Type * base, size_t num, - KsQSortCompFunc compareFunc, Type2* base2 = c3d_null, Type3* base3 = c3d_null ) + KsQSortCompFunc compareFunc, Type2* base2 = nullptr, Type3* base3 = nullptr ) { if ( num < 2 ) @@ -241,9 +241,9 @@ void InsertSort( Type * base, if ( num == 2 ) { if ( compareFunc( base, base + 1 ) >= 0 ) { Swap( base, 0, 1 ); - if ( base2 != c3d_null ) { + if ( base2 != nullptr ) { Swap( base2, 0, 1 ); - if ( base3 != c3d_null ) + if ( base3 != nullptr ) Swap( base3, 0, 1 ); } } @@ -253,9 +253,9 @@ void InsertSort( Type * base, for ( ptrdiff_t i = 1; i < (ptrdiff_t)num; ++i ) { for ( ptrdiff_t j = i; j > 0 && compareFunc( base + j - 1, base + j ) >= 0; j-- ) { Swap( base, j - 1, j ); - if ( base2 != c3d_null ) { + if ( base2 != nullptr ) { Swap( base2, j - 1, j ); - if ( base3 != c3d_null ) + if ( base3 != nullptr ) Swap( base3, j - 1, j ); } } @@ -291,17 +291,17 @@ void InsertSort( Type * base, negative value, if 1<2; 0, if 1=2, positive value, if 1>2. \~ - \param[out] base2 - \ru Указатель на второй массив (может быть c3d_null). - \en Pointer to the second array (could be c3d_null). \~ - \param[out] base3 - \ru Указатель на третий массив (может быть c3d_null). - \en Pointer to the third array (could be c3d_null). \~ + \param[out] base2 - \ru Указатель на второй массив (может быть nullptr). + \en Pointer to the second array (could be nullptr). \~ + \param[out] base3 - \ru Указатель на третий массив (может быть nullptr). + \en Pointer to the third array (could be nullptr). \~ \ingroup Base_Algorithms */ //--- template void QuickSort( Type * base, size_t num, - KsQSortCompFunc compareFunc, Type2* base2 = c3d_null, Type3* base3 = c3d_null ) + KsQSortCompFunc compareFunc, Type2* base2 = nullptr, Type3* base3 = nullptr ) { #define QSORT_THRESHOLD 25 // \ru Порог перехода на другой тип сортировки.\en Threshold of transition to another sorting. @@ -317,9 +317,9 @@ void QuickSort( Type * base, if ( num == 2 ) { if ( compareFunc( base, base + 1 ) >= 0 ) { Swap( base, 0, 1 ); - if ( base2 != c3d_null ) { + if ( base2 != nullptr ) { Swap( base2, 0, 1 ); - if ( base3 != c3d_null ) + if ( base3 != nullptr ) Swap( base3, 0, 1 ); } } @@ -338,9 +338,9 @@ void QuickSort( Type * base, // \ru Выбирается базовый элемент (используется средний). \en Select a base element (use the middle one). midIndex = ( rightIndex + leftIndex ) / 2; Swap( base, midIndex, leftIndex ); - if ( base2 != c3d_null ) { + if ( base2 != nullptr ) { Swap( base2, midIndex, leftIndex ); - if ( base3 != c3d_null ) + if ( base3 != nullptr ) Swap( base3, midIndex, leftIndex ); } @@ -369,17 +369,17 @@ void QuickSort( Type * base, break; Swap( base, lInd, rInd ); - if ( base2 != c3d_null ) { + if ( base2 != nullptr ) { Swap( base2, lInd, rInd ); - if ( base3 != c3d_null ) + if ( base3 != nullptr ) Swap( base3, lInd, rInd ); } } Swap( base, leftIndex, rInd ); - if ( base2 != c3d_null ) { + if ( base2 != nullptr ) { Swap( base2, leftIndex, rInd ); - if ( base3 != c3d_null ) + if ( base3 != nullptr ) Swap( base3, leftIndex, rInd ); } diff --git a/C3d/Include/tool_string_util.h b/C3d/Include/tool_string_util.h index 22d77d3..09a1c44 100644 --- a/C3d/Include/tool_string_util.h +++ b/C3d/Include/tool_string_util.h @@ -44,7 +44,7 @@ inline const char* strret( const char* str ) { return str; } /// \ru Возвр inline char * strnewdup( const char * str, size_t minLen = 0 ) { if ( !str ) - return c3d_null; + return nullptr; size_t len = strlen( str ); @@ -65,7 +65,7 @@ inline char * strnewdup( const char * str, size_t minLen = 0 ) inline wchar_t * wcsnewdup( const wchar_t * str, size_t minLen = 0 ) { if ( !str ) - return c3d_null; + return nullptr; size_t len = wcslen( str ); @@ -85,15 +85,15 @@ inline wchar_t * wcsnewdup( const wchar_t * str, size_t minLen = 0 ) //--- inline wchar_t * mbsnewwcs( const char * str ) { - wchar_t * res = c3d_null; + wchar_t * res = nullptr; if ( str ) { #ifndef __MOBILE_VERSION__ #ifdef C3D_WINDOWS // _MSC_VER - size_t n = mbstowcs( c3d_null, str, 0 ); + size_t n = mbstowcs( nullptr, str, 0 ); #else // C3D_WINDOWS - size_t n = std::mbstowcs( c3d_null, str, 0 ); + size_t n = std::mbstowcs( nullptr, str, 0 ); #endif // C3D_WINDOWS if ( n != NSIZE ) @@ -154,15 +154,15 @@ inline wchar_t * mbsnewwcs( const char * str ) //--- inline char * wcsnewmbs( const wchar_t * str ) { - char * res = c3d_null; + char * res = nullptr; if ( str ) { // \ru один WCHAR может занять более одного CHAR! \en one WCHAR may replace more than one CHAR! #ifdef C3D_WINDOWS // _MSC_VER - size_t n = wcstombs( c3d_null, str, 0 ); + size_t n = wcstombs( nullptr, str, 0 ); #else // C3D_WINDOWS - size_t n = std::wcstombs( c3d_null, str, 0 ); + size_t n = std::wcstombs( nullptr, str, 0 ); #endif // C3D_WINDOWS if ( n != NSIZE ) @@ -371,10 +371,10 @@ inline const char * strret( const char * str ) { return str; } /// \ru В \ingroup Base_Tools_String */ //--- -inline uint32* Utf16ToUcs4( uint16* source, size_t* calculateCountSymbol = c3d_null ) +inline uint32* Utf16ToUcs4( uint16* source, size_t* calculateCountSymbol = nullptr ) { size_t count = 0; // \ru количество символов в строке \en a number of symbols in string - uint32 * outBuf = c3d_null; + uint32 * outBuf = nullptr; if ( source ) { while (source[count] != 0) @@ -400,10 +400,10 @@ inline uint32* Utf16ToUcs4( uint16* source, size_t* calculateCountSymbol = c3d_n \ingroup Base_Tools_String */ //--- -inline uint16* Ucs4ToUtf16( uint32* source, size_t* calculateCountSymbol = c3d_null ) +inline uint16* Ucs4ToUtf16( uint32* source, size_t* calculateCountSymbol = nullptr ) { size_t count = 0; // \ru количество символов в строке \en a number of symbols in string - uint16 * outBuf = c3d_null; + uint16 * outBuf = nullptr; if ( source ) { while (source[count] != 0) diff --git a/C3d/Include/topology.h b/C3d/Include/topology.h index 59e2e0d..347d003 100644 --- a/C3d/Include/topology.h +++ b/C3d/Include/topology.h @@ -250,10 +250,10 @@ public : virtual MbeTopologyType IsA() const; // \ru Тип элемента. \en A type of element. /// \ru Создать новую вершину копированием всех данных исходной вершины. \en Create new vertex by copying all data of the initial vertex. - virtual MbVertex * DataDuplicate( MbRegDuplicate * = c3d_null ) const; - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate around an axis. + virtual MbVertex * DataDuplicate( MbRegDuplicate * = nullptr ) const; + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate around an axis. virtual double DistanceToPoint( const MbCartPoint3D & ) const; // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. virtual void AddYourGabaritTo( MbCube & ) const; // \ru Добавить свой габарит в присланный габарит. \en Add your own bounding box into the sent bounding box. virtual void CalculateLocalGabarit( const MbMatrix3D & into, MbCube & cube ) const; // \ru Рассчитать габарит в локальной системы координат. \en Calculate bounding box in the local coordinate system. @@ -316,10 +316,10 @@ IMPL_PERSISTENT_OPS( MbVertex ) // --- class MATH_CLASS MbEdge : public MbTopologyItem { protected : - MbCurve3D * curve; ///< \ru Кривая, по которой проходит ребро (всегда не c3d_null). \en A curve, an edge passes by (it is always not c3d_null). + MbCurve3D * curve; ///< \ru Кривая, по которой проходит ребро (всегда не nullptr). \en A curve, an edge passes by (it is always not nullptr). bool sameSense; ///< \ru Признак совпадения направления ребра с направлением кривой. \en An attribute of coincidence between direction of curve and direction of edge. - MbVertex * begVertex; ///< \ru Вершина-начало (всегда не c3d_null). \en Start vertex (always not c3d_null). - MbVertex * endVertex; ///< \ru Вершина-конец (всегда не c3d_null). \en End vertex (always not c3d_null). + MbVertex * begVertex; ///< \ru Вершина-начало (всегда не nullptr). \en Start vertex (always not nullptr). + MbVertex * endVertex; ///< \ru Вершина-конец (всегда не nullptr). \en End vertex (always not nullptr). protected : /// \ru Конструктор копирования. \en Copy constructor. @@ -359,10 +359,10 @@ public : virtual MbeTopologyType IsA() const; // \ru Тип элемента. \en A type of element. /// \ru Создать новое ребро копированием всех данных исходного ребра. \en Create new edge by copying all data of the initial edge. - virtual MbEdge * DataDuplicate( MbRegDuplicate * = c3d_null ) const; - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Трансформация. \en Transformation. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Перемещение. \en Moving. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Вращение. \en Rotation. + virtual MbEdge * DataDuplicate( MbRegDuplicate * = nullptr ) const; + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Трансформация. \en Transformation. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Перемещение. \en Moving. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Вращение. \en Rotation. virtual double DistanceToPoint( const MbCartPoint3D & ) const; // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. virtual void AddYourGabaritTo( MbCube & ) const; // \ru Добавить свой габарит в присланный габарит. \en Add your own bounding box into the sent bounding box. virtual void CalculateLocalGabarit( const MbMatrix3D & into, MbCube & cube ) const; // \ru Рассчитать габарит в локальной системы координат. \en Calculate bounding box in the local coordinate system. @@ -444,7 +444,7 @@ public : bool IsClosed() const; /// \ru Установить метку себе и вершинам. \en Set a label for self and vertices. - void SetLabelThrough( MbeLabelState l, void * key = c3d_null ) const; + void SetLabelThrough( MbeLabelState l, void * key = nullptr ) const; /// \ru Установить метку себе и вершинам. \en Set a label for self and vertices. void SetLabelThrough( MbeLabelState l, void * key, bool setLock ) const; /// \ru Удалить частную метку себе и вершинам. \en Remove private label for self and vertices. @@ -586,7 +586,7 @@ public : virtual MbeTopologyType IsA() const; // \ru Тип элемента. \en A type of element. /// \ru Создать новое ребро копированием всех данных исходного ребра. \en Create new edge by copying all data of the initial edge. - virtual MbCurveEdge * DataDuplicate( MbRegDuplicate * = c3d_null ) const; + virtual MbCurveEdge * DataDuplicate( MbRegDuplicate * = nullptr ) const; virtual void SetOwnChangedThrough( MbeChangedType ); // \ru Установить флаг изменения в положение измененного объекта. \en Set the flag that the object has been changed. virtual void Reverse(); // \ru Изменить направление ребра на противоположной, не изменяя кривую. \en Change direction of edge without changing a curve. /// \ru Являются ли объекты равными? \en Determine whether objects are equal. @@ -628,7 +628,7 @@ public : bool IsUsual( bool tolerantIsUsual ) const; /// \ru Установить метки ориентированных ребер. \en Set labels of oriented edges. - void SetOrientedEdgesLabel( MbeLabelState, void * key = c3d_null ); + void SetOrientedEdgesLabel( MbeLabelState, void * key = nullptr ); /// \ru Найти ориентированное ребро. \en Find an oriented edge. bool FindOrientedEdge( bool orient, const MbFace * face, MbLoop *& findLoop, size_t & index ) const; /// \ru Найти ориентированное ребро. \en Find an oriented edge. @@ -712,7 +712,7 @@ public : The calculation is correct for edges which do not change a convexity. Returns ts_neutral for smooth edges. \~ */ - ThreeStates IsConvex( double angleEps = EXTENT_EPSILON, const MbRect1D * tRange = c3d_null ) const; + ThreeStates IsConvex( double angleEps = EXTENT_EPSILON, const MbRect1D * tRange = nullptr ) const; /**\ru Скопировать из копии готовые метрические оценки, которые в оригинале не были рассчитаны. \en Copy from the copy ready estimates which were not calculated in the original. \~ @@ -950,7 +950,7 @@ IMPL_PERSISTENT_OPS( MbCurveEdge ) // --- class MATH_CLASS MbOrientedEdge : public MbTopItem { protected: - MbCurveEdge * curveEdge; ///< \ru Ребро грани (всегда не c3d_null). \en Face edge (always not c3d_null). + MbCurveEdge * curveEdge; ///< \ru Ребро грани (всегда не nullptr). \en Face edge (always not nullptr). bool orientation; ///< \ru Направление ребра грани в цикле. \en Direction of a face edge in the loop. mutable MbLabel label; ///< \ru Временная метка для выполнения операций. \en Temporary label for performing of operations. public : @@ -1019,7 +1019,7 @@ public : template void GetVerticesArray( VerticesVector & vertices, bool findSame = true ) const { - const MbVertex * lastVertex= c3d_null; + const MbVertex * lastVertex= nullptr; if ( vertices.size() > 0 ) lastVertex = vertices.back(); @@ -1046,15 +1046,15 @@ public : void SetOrientation( bool o ); /// \ru Получить метку. \en Get label. - MbeLabelState GetLabel( void * key = c3d_null ) const { return (MbeLabelState)label.GetLabel(key);} + MbeLabelState GetLabel( void * key = nullptr ) const { return (MbeLabelState)label.GetLabel(key);} /// \ru Установить свою метку. \en Set label. - void SetOwnLabel( MbeLabelState l, void * key = c3d_null ) const { label.SetLabel( l, key ); } + void SetOwnLabel( MbeLabelState l, void * key = nullptr ) const { label.SetLabel( l, key ); } /// \ru Установить метку ориентированному ребру, ребру грани и вершинам ребра. \en Set label for oriented edge, face edge and vertices of edge. - void SetLabelThrough( MbeLabelState l, void * key = c3d_null ) const; + void SetLabelThrough( MbeLabelState l, void * key = nullptr ) const; /// \ru Установить метку ориентированному ребру, ребру грани и вершинам ребра. \en Set label for oriented edge, face edge and vertices of edge. void SetLabelThrough( MbeLabelState l, void * key, bool setLock ) const; /// \ru Удалить частную метку. \en Remove private label. - void RemovePrivateLabel ( void * key = c3d_null ) const { label.DeletePrivate(key); } + void RemovePrivateLabel ( void * key = nullptr ) const { label.DeletePrivate(key); } /// \ru Удалить частную метку ориентированному ребру, ребру грани и вершинам ребра. \en Remove private label for oriented edge, face edge and vertices of edge. void RemovePrivateLabelThrough( void * key ) const; @@ -1151,21 +1151,21 @@ public : size_t GetEdgesCount() const { return edgeList.size(); } /// \ru Получить метку цикла. \en Get a label of the loop. - MbeLabelState GetLabel( void * key = c3d_null ) const { return (MbeLabelState)label.GetLabel(key); } + MbeLabelState GetLabel( void * key = nullptr ) const { return (MbeLabelState)label.GetLabel(key); } /// \ru Установить метку. \en Set a label of the loop. - void SetOwnLabel( MbeLabelState l, void * key = c3d_null ) const { label.SetLabel( l, key ); } + void SetOwnLabel( MbeLabelState l, void * key = nullptr ) const { label.SetLabel( l, key ); } /// \ru Установить метку себе и ребрам цикла. \en Set a label for self and loop vertices. - void SetLabelThrough( MbeLabelState l, void * key = c3d_null ) const; + void SetLabelThrough( MbeLabelState l, void * key = nullptr ) const; /// \ru Установить метку себе и ребрам цикла. \en Set a label for self and loop vertices. void SetLabelThrough( MbeLabelState l, void * key, bool setLock ) const; /// \ru Удалить частную метку себе и ребрам цикла. \en Remove private label for self and loop edges. void RemovePrivateLabelThrough( void * key ) const; /// \ru Установить метку ребрам. \en Set a label for edges. - void SetCurveEdgesLabel( MbeLabelState, void * key = c3d_null ) const; + void SetCurveEdgesLabel( MbeLabelState, void * key = nullptr ) const; /// \ru Проверить метки рёбер и установить свою метку. \en Check edges labels and set own label. - void CheckEdgesLabel( void * key = c3d_null ) const; + void CheckEdgesLabel( void * key = nullptr ) const; /// \ru Удалить частную метку. \en Remove private label. - void RemovePrivateLabel ( void * key = c3d_null ) const { label.DeletePrivate(key); } + void RemovePrivateLabel ( void * key = nullptr ) const { label.DeletePrivate(key); } /// \ru Выдать множество вершин цикла. \en Get a set of loop vertices. template @@ -1233,7 +1233,7 @@ public : /// \ru Замена базового ребра. \en Replacement of the basis edge. void InitOrientedEdge( size_t edgeIndex, MbCurveEdge & initEdge, bool initOrientation, bool replaceVertices ); /// \ru Выдать ориентированное ребро по номеру. \en Get an oriented edge by the number. - MbOrientedEdge * GetOrientedEdge( size_t index ) const { return (index < edgeList.size()) ? edgeList[index] : c3d_null; } + MbOrientedEdge * GetOrientedEdge( size_t index ) const { return (index < edgeList.size()) ? edgeList[index] : nullptr; } /// \ru Выдать ориентированное ребро по номеру без проверки корректности индекса. \en Get an oriented edge by the number without check of correctness of the index. MbOrientedEdge *_GetOrientedEdge( size_t index ) const { return edgeList[index]; } @@ -1270,7 +1270,7 @@ public : void Inverse(); /// \ru Принадлежит ли вершина пути. \en Does a vertex belong a path? - bool IsVertexOn( const MbVertex * vertex, size_t * index = c3d_null ) const; + bool IsVertexOn( const MbVertex * vertex, size_t * index = nullptr ) const; /// \ru Замена указателей на поверхность. \en Replacement of the pointers to a surface. void ChangeSurface( MbSurface & oldSurf, MbSurface & newSurf, bool orient ); @@ -1319,11 +1319,11 @@ public : void SetProperties( const MbProperties & ); /// \ru Преобразовать объект согласно матрице. \en Transform an object according to the matrix. - void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); + void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); /// \ru Сдвинуть объект вдоль вектора. \en Move an object along a vector. - void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); + void Move ( const MbVector3D &, MbRegTransform * = nullptr ); /// \ru Повернуть объект вокруг оси на заданный угол. \en Rotate an object at a given angle around an axis. - void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); + void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); /// \ru Сдвинуть двумерные кривые вдоль вектора в области параметров поверхности (все сразу). \en Move two-dimensional curves along the vector in the surface parameter region (all at once). void Move( MbVector &, const MbSurface &, bool ); /// \ru Является ли контур граничным? \en Is a contour boundary? @@ -1356,7 +1356,7 @@ public: const MbCurveEdge * edge; ///< \ru Ребро цикла. \en Loop edge. double curveParam; ///< \ru Параметр двумерной кривой ребра, лежащей на поверхности грани. \en The parameter of two-dimensional curve that lies on the surface of a face and is contained in the edge. public: - LoopCrossParam() : loopIndex( SYS_MAX_T), edge( c3d_null ), curveParam( UNDEFINED_DBL ) {} + LoopCrossParam() : loopIndex( SYS_MAX_T), edge( nullptr ), curveParam( UNDEFINED_DBL ) {} LoopCrossParam( size_t li, const MbCurveEdge * e, double t ) : loopIndex( li ), edge( e ), curveParam( t ) {} LoopCrossParam( const LoopCrossParam & obj ) : loopIndex( obj.loopIndex ), edge( obj.edge ), curveParam( obj.curveParam ) {} @@ -1415,7 +1415,7 @@ public: // --- class MATH_CLASS MbFace : public MbTopologyItem, public MbSyncItem { protected: - MbSurface * surface; ///< \ru Поверхность грани (всегда не c3d_null). \en Face surface (always not c3d_null). + MbSurface * surface; ///< \ru Поверхность грани (всегда не nullptr). \en Face surface (always not nullptr). bool sameSense; ///< \ru Признак совпадения направления нормали грани с нормалью поверхности. \en An attribute of coincidence between the face normal direction and the surface normal direction. RPArray loops; ///< \ru Границы грани (первая граница должна быть внешней). \en Face boundaries (the first boundary should be external). private: @@ -1435,11 +1435,11 @@ public: , loops( bnds.size(), 1 ) , surface( const_cast(&surf) ) , sameSense( sense ) // признак совпадения нормали - , temporal( c3d_null ) + , temporal( nullptr ) { surface->AddRef(); for ( size_t i = 0, cnt = bnds.size(); i < cnt; ++i ) { - if ( bnds[i] != c3d_null ) + if ( bnds[i] != nullptr ) AddLoop( *bnds[i] ); } } @@ -1456,10 +1456,10 @@ public: virtual MbeTopologyType IsA() const; // \ru Тип элемента. \en A type of element. /// \ru Создать новую грань копированием всех данных исходной грани. \en Create new face by copying all data of the initial face. - virtual MbFace * DataDuplicate( MbRegDuplicate * = c3d_null ) const; - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Трансформация. \en Transformation. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Перемещение. \en Moving. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Вращение. \en Rotation. + virtual MbFace * DataDuplicate( MbRegDuplicate * = nullptr ) const; + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Трансформация. \en Transformation. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Перемещение. \en Moving. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Вращение. \en Rotation. virtual double DistanceToPoint( const MbCartPoint3D & ) const; // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. virtual void AddYourGabaritTo( MbCube & ) const; // \ru Добавить свой габарит в присланный габарит. \en Add your own bounding box into the sent bounding box. virtual void CalculateLocalGabarit( const MbMatrix3D & into, MbCube & cube ) const; // \ru Рассчитать габарит в локальной системы координат. \en Calculate bounding box in the local coordinate system. @@ -1496,7 +1496,7 @@ public: /// \ru Выдать количество циклов (границ) грани . \en Get the number of loops (boundaries) of face. size_t GetLoopsCount() const { return loops.size(); } /// \ru Установить метку грани, циклам, рёбрам и вершинам. \en Set a label of face to its loops, edges and vertices. - void SetLabelThrough( MbeLabelState l, void * key = c3d_null ) const; + void SetLabelThrough( MbeLabelState l, void * key = nullptr ) const; /// \ru Установить метку грани, циклам, рёбрам и вершинам. \en Set a label of face to its loops, edges and vertices. void SetLabelThrough( MbeLabelState l, void * key, bool setLock ) const; /// \ru Удалить частную метку грани, циклам, рёбрам и вершинам. \en Remove a private label of face to its loops, edges and vertices. @@ -1512,7 +1512,7 @@ public: size_t loopsCnt = loops.size(); vertices.reserve( vertices.size() + loopsCnt * 4 ); for ( size_t i = 0; i < loopsCnt; ++i ) { - if ( loops[i] != c3d_null ) + if ( loops[i] != nullptr ) loops[i]->GetVertices( vertices ); } } @@ -1524,7 +1524,7 @@ public: void GetEdgesSet( EdgesSet & edges ) const { size_t loopsCnt = loops.size(); for ( size_t i = 0; i < loopsCnt; ++i ) { - if ( loops[i] != c3d_null ) + if ( loops[i] != nullptr ) loops[i]->GetEdgesSet( edges ); } } @@ -1533,7 +1533,7 @@ public: void GetEdges( EdgesVector & edges, EdgesSet & edgesCache ) const { size_t loopsCnt = loops.size(); for ( size_t i = 0; i < loopsCnt; ++i ) { - if ( loops[i] != c3d_null ) + if ( loops[i] != nullptr ) loops[i]->GetEdges( edges , edgesCache ); } } @@ -1547,7 +1547,7 @@ public: bool HasNeighborFace() const; /// \ru Выдать границу (цикл) с проверкой корректности индекса. \en Get a boundary (a loop) with a check of index correctness. - MbLoop * GetLoop( size_t index ) const { size_t cnt = loops.size(); return cnt ? loops[index % cnt] : c3d_null; } + MbLoop * GetLoop( size_t index ) const { size_t cnt = loops.size(); return cnt ? loops[index % cnt] : nullptr; } /// \ru Выдать границу (цикл) без проверки корректности индекса. \en Get a boundary (a loop) without a check of index correctness. MbLoop *_GetLoop( size_t index ) const { return loops[index]; } /// \ru Обнулить количество ребер в цикле с указанным индексом. \en Set to null the number of edges in loop with the given index. @@ -1571,9 +1571,9 @@ public: /// \ru Установить указатели ребер цикла на грань. \en Set the pointers of loop edges to the face. void SetFaceToLoopEdges( MbLoop & ); - /// \ru Установить указатели на грань слева или грань справа в ребрах цикла на c3d_null. \en Set to null the pointers to the face on the left or to the face on the right in edges of loop. + /// \ru Установить указатели на грань слева или грань справа в ребрах цикла на nullptr. \en Set to null the pointers to the face on the left or to the face on the right in edges of loop. void SetNullToLoopEdges( MbLoop & ); - /// \ru Установить указатели на грань слева или грань справа в ребрах циклов на c3d_null. \en Set to null the pointers to the face on the left or to the face on the right in edges of loops. + /// \ru Установить указатели на грань слева или грань справа в ребрах циклов на nullptr. \en Set to null the pointers to the face on the left or to the face on the right in edges of loops. void SetNullToLoopsEdges(); /// \ru Обнулить указатели на грань слева или грань справа, указывающие на смежную грань delFace, в ребрах циклов. \en Set to null pointers to the face on the left or to the face on the right which point to the adjacent face delFace in edges of loops. void SetNullToFace( const MbFace * delFace ); @@ -1583,7 +1583,7 @@ public: void MakeRight( bool setBounds = false ); /// \ru Принадлежит ли вершина грани? \en Does a vertex belong an edge? - bool IsVertexOn( const MbVertex * vertex, size_t * indLoop = c3d_null, size_t * indEdge = c3d_null ) const; + bool IsVertexOn( const MbVertex * vertex, size_t * indLoop = nullptr, size_t * indEdge = nullptr ) const; /** \brief \ru Изменить ориентацию грани. \en Change an orientation of a face. \~ @@ -1621,7 +1621,7 @@ public: void CalculateWire( const MbStepData & stepData, MbMesh & mesh ) const // The method deprecated. It will be removed at 2019. Use CalculateMesh( stepData, MbFormNote(true, false), mesh ); \~ { CalculateMesh( stepData, MbFormNote(true, false), mesh ); } /// \ru Связаны ли грани? \en Are faces connected? - bool IsConnectedWith( const MbFace * face, RPArray * commonEdges = c3d_null ) const; + bool IsConnectedWith( const MbFace * face, RPArray * commonEdges = nullptr ) const; /// \ru Подобны ли поверхности для объединения трансформацией по матрице (первичная проверка)? \en Are surfaces similar for merge by transformation by the matrix (a primary check)? bool IsSimilarToFace( const MbFace & face, bool & normal, bool & planeType, VERSION version, double precision = METRIC_PRECISION ) const; /// \ru Подобны ли поверхности для объединения путем замены (первичная проверка)? \en Are surfaces similar for merge by replacement (a primary check)? @@ -1674,7 +1674,7 @@ public: const MbCurveEdge * FindEdgeByHash( const SimpleName h ) const; /// \ru Установить метку ориентированного ребра. \en Set a label for an oriented edge. - void SetOrientedLabel ( const MbCurveEdge & edge, MbeLabelState n, void * key = c3d_null ); + void SetOrientedLabel ( const MbCurveEdge & edge, MbeLabelState n, void * key = nullptr ); /// \ru Вычислить ближайшее расстояние до ребра и ближайшие точки грани и ребра. \en Calculate the nearest distance to an edge and the nearest points of an edge. double DistanceToEdge ( const MbCurveEdge & edge, MbCartPoint3D & p, MbCartPoint3D & edgeP ) const; /// \ru Вычислить ближайшее расстояние до грани и ближайшие точки граней. \en Calculate the nearest distance to a face and the nearest points of faces. @@ -1788,7 +1788,7 @@ public: double metricNear, VERSION version ) const; /// \ru Построить нормальные ЛСК конструктивных плоскостей. \en Construct normal placements of constructive planes. - bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places ) const; + bool CreateNormalPlacements ( const MbVector3D & axisZ, double angle, SArray & places, VERSION version = Math::DefaultMathVersion() ) const; /// \ru Построить касательные ЛСК конструктивных плоскостей. \en Construct tangent placements of constructive planes. bool CreateTangentPlacements( const MbVector3D & axisZ, SArray & places ) const; /// \ru Дать некоторую точку и нормаль на грани. \en Get some point and normal on face. @@ -1852,7 +1852,7 @@ public: public: /// \ru Создан ли временный объект сопровождения грани? \en Is a temporary object for the maintenance of a face created? - bool IsTemporal() const { return (temporal != c3d_null); } + bool IsTemporal() const { return (temporal != nullptr); } /// \ru Удалить временный объект сопровождения. \en Delete a temporary maintenance object. void RemoveTemporal() const; /// \ru Создать новый временный объект сопровождения. \en Create new temporary maintenance object. @@ -1883,7 +1883,7 @@ void MbFace::GetEdges( EdgesVector & edges, size_t mapThreshold ) const if ( edges.size() < 1 ) { size_t checkCnt = 0; for ( size_t i = 0; i < loopsCnt; ++i ) { - if ( loops[i] != c3d_null ) { + if ( loops[i] != nullptr ) { checkCnt += loops[i]->GetEdgesCount(); if ( checkCnt > mapThreshold ) { useMap = true; @@ -1899,9 +1899,9 @@ void MbFace::GetEdges( EdgesVector & edges, size_t mapThreshold ) const c3d::EdgeSPtr edge; for ( size_t i = 0; i < loopsCnt; ++i ) { MbLoop * loop = loops[i]; - if ( loop != c3d_null ) { + if ( loop != nullptr ) { for ( size_t j = 0, edgesCnt = loop->GetEdgesCount(); j < edgesCnt; ++j ) { - if ( loop->_GetOrientedEdge( j ) != c3d_null ) { + if ( loop->_GetOrientedEdge( j ) != nullptr ) { edge = &loop->_GetOrientedEdge( j )->GetCurveEdge(); mapIt = mapEdges.find( edge ); if ( mapIt == mapEdges.end() ) { @@ -1918,7 +1918,7 @@ void MbFace::GetEdges( EdgesVector & edges, size_t mapThreshold ) const } if ( !useMap ) { for ( size_t i = 0; i < loopsCnt; ++i ) { - if ( loops[i] != c3d_null ) + if ( loops[i] != nullptr ) loops[i]->GetEdges( edges ); } } @@ -1938,7 +1938,7 @@ void MbFace::GetOuterEdges( EdgesVector & edges, size_t mapThreshold ) const if ( edges.size() < 1 ) { size_t checkCnt = 0; - if ( loops.front() != c3d_null ) { + if ( loops.front() != nullptr ) { checkCnt += loops.front()->GetEdgesCount(); if ( checkCnt > mapThreshold ) useMap = true; @@ -1951,7 +1951,7 @@ void MbFace::GetOuterEdges( EdgesVector & edges, size_t mapThreshold ) const c3d::EdgeSPtr edge; MbLoop * loop = loops.front(); for ( size_t j = 0, edgesCnt = loop->GetEdgesCount(); j < edgesCnt; ++j ) { - if ( loop->_GetOrientedEdge( j ) != c3d_null ) { + if ( loop->_GetOrientedEdge( j ) != nullptr ) { edge = &loop->_GetOrientedEdge( j )->GetCurveEdge(); mapIt = mapEdges.find( edge ); if ( mapIt == mapEdges.end() ) { @@ -1965,7 +1965,7 @@ void MbFace::GetOuterEdges( EdgesVector & edges, size_t mapThreshold ) const } } if ( !useMap ) { - if ( loops.front() != c3d_null ) + if ( loops.front() != nullptr ) loops.front()->GetEdges( edges ); } } @@ -1979,12 +1979,12 @@ void MbFace::GetBoundaryEdges( ConstEdgesVector & boundaryEdges ) const { for ( size_t i = 0, loopsCnt = loops.size(); i < loopsCnt; ++i ) { const MbLoop * loop = loops[i]; - if ( loop == c3d_null ) + if ( loop == nullptr ) continue; c3d::EdgeSPtr edge; for ( size_t j = 0, edgesCnt = loop->GetEdgesCount(); j < edgesCnt; ++j ) { const MbOrientedEdge * orientEdge = loop->_GetOrientedEdge( j ); - if ( orientEdge == c3d_null ) + if ( orientEdge == nullptr ) continue; edge = const_cast( &orientEdge->GetCurveEdge() ); if ( edge->IsBoundaryFace() ) { @@ -2013,7 +2013,7 @@ void MbFace::GetNeighborFaces( FacesVector & neighborFaces ) const size_t neighborsCnt0 = neighborFaces.size(); for ( k = 0; k < neighborsCnt0; k++ ) { const MbFace * neighborFace = neighborFaces[k]; - if ( neighborFace != c3d_null ) + if ( neighborFace != nullptr ) facesLabels.push_back( std::make_pair( neighborFace, neighborFace->GetLabel() ) ); } neighborsCnt0 = facesLabels.size(); @@ -2021,14 +2021,14 @@ void MbFace::GetNeighborFaces( FacesVector & neighborFaces ) const // mark neighbour faces by the first label for ( k = 0; k < loopsCnt; ++k ) { const MbLoop * loop = loops[k]; - if ( loop == c3d_null ) + if ( loop == nullptr ) continue; for ( size_t edgeInd = 0, edgesCnt = loop->GetEdgesCount(); edgeInd < edgesCnt; ++edgeInd ) { const MbOrientedEdge * edge = loop->_GetOrientedEdge( edgeInd ); - if ( edge == c3d_null ) + if ( edge == nullptr ) continue; const MbFace * neighborFace = edge->GetFaceMinus(); - if ( neighborFace != c3d_null && neighborFace != this ) { + if ( neighborFace != nullptr && neighborFace != this ) { facesLabels.push_back( std::make_pair( neighborFace, neighborFace->GetLabel() ) ); // save initial label neighborFace->SetOwnLabel( ls_Used ); } diff --git a/C3d/Include/topology_faceset.h b/C3d/Include/topology_faceset.h index e01ded2..268eb53 100644 --- a/C3d/Include/topology_faceset.h +++ b/C3d/Include/topology_faceset.h @@ -163,7 +163,7 @@ public : \return \ru Копия объекта или оригинал(в случае режима копирования cm_Same). \en Copy of an object or original (in a case of the mode cm_Same). \~ */ - MbFaceShell * Copy( MbeCopyMode sameShell, MbShellHistory * history = c3d_null, MbRegDuplicate * iReg = c3d_null ); + MbFaceShell * Copy( MbeCopyMode sameShell, MbShellHistory * history = nullptr, MbRegDuplicate * iReg = nullptr ); /** \brief \ru Создать копию. \en Create a copy. \~ @@ -172,7 +172,7 @@ public : \return \ru Копия объекта. \en Copy of the object. \~ */ - MbFaceShell * Duplicate( MbRegDuplicate * iReg = c3d_null ) const; + MbFaceShell * Duplicate( MbRegDuplicate * iReg = nullptr ) const; /// \ru Замкнутая ли оболочка? \en Is shell closed? bool IsClosed() const { return closed; } @@ -192,7 +192,7 @@ public : bool delTemporal = false; for ( size_t i = 0, cnt = newFaces.size(); i < cnt; ++i ) { const MbFace * newFace = newFaces[i]; - if ( newFace == c3d_null ) + if ( newFace == nullptr ) continue; if ( justAdd || ( std::find( faceSet.begin(), faceSet.end(), newFace ) == faceSet.end() ) ) { faceSet.push_back( const_cast(newFace) ); @@ -231,7 +231,7 @@ public : for ( size_t k = 0; k < facesCnt; ++k ) { face = faceSet[k]; ::DecRefItem( faceSet[k] ); - faceSet[k] = c3d_null; + faceSet[k] = nullptr; detachFaces.push_back( face ); ::DetachItem( face ); } @@ -260,7 +260,7 @@ public : \param[in] iReg - \ru Регистратор объектов. \en Registrator of objects: \~ */ - void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = c3d_null ); + void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = nullptr ); /** \brief \ru Сдвинуть вдоль вектора. \en Move along a vector. \~ @@ -275,7 +275,7 @@ public : \param[in] iReg - \ru Регистратор. \en Registrator. \~ */ - void Move( const MbVector3D & to, MbRegTransform * iReg = c3d_null ); + void Move( const MbVector3D & to, MbRegTransform * iReg = nullptr ); /** \brief \ru Повернуть вокруг оси. \en Rotate around an axis. \~ @@ -292,7 +292,7 @@ public : \param[in] iReg - \ru Регистратор. \en Registrator. \~ */ - void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * iReg = c3d_null ); + void Rotate( const MbAxis3D & axis, double angle, MbRegTransform * iReg = nullptr ); /// \ru Рассчитать расстояние до точки. \en Calculate the distance to a point. double DistanceToPoint( const MbCartPoint3D & to ) const; /// \ru Вывернуть оболочку наизнанку - переориентировать все грани. \en Revert the shell - reorientation of the whole set of faces. @@ -300,7 +300,7 @@ public : /// \ru Являются ли объекты равными. \en Determine whether objects are equal. bool IsSame( const MbFaceShell & faces, double accuracy ) const; /// \ru Установить метки всем объектам, имеющим таковые. \en Set labels for all objects which have them. - void SetLabelThrough( MbeLabelState, void * = c3d_null ) const; + void SetLabelThrough( MbeLabelState, void * = nullptr ) const; /// \ru Установить метки всем объектам, имеющим таковые. \en Set labels for all objects which have them. void SetLabelThrough( MbeLabelState, void *, bool ) const; /// \ru Удалить частные метки всем объектам, имеющим таковые. \en Remove private labels for all objects which have them. @@ -308,15 +308,15 @@ public : /// \ru Установить флаги изменённости объектов. \en Set flags that objects have been changed. void SetOwnChangedThrough( MbeChangedType n ); /// \ru Установить флаги в начальное состояние. \en Set flags to initial state. - void ResetFlags( void * = c3d_null ); + void ResetFlags( void * = nullptr ); /// \ru Забрать в оболочку множество граней из оболочки faces. \en Move a set of faces to the shell from another shell. - bool UnionWith( MbFaceShell & faces, c3d::FacesSet * sharedSet = c3d_null ); + bool UnionWith( MbFaceShell & faces, c3d::FacesSet * sharedSet = nullptr ); /// \ru Установить заданную метку всем вершинам оболочки. \en Set the given label for all vertices of the shell. - size_t SetVerticesLabel( MbeLabelState, void * = c3d_null) const; + size_t SetVerticesLabel( MbeLabelState, void * = nullptr) const; /// \ru Установить заданную метку всем рёбрам оболочки. \en Set the given label for all edges of the shell. - size_t SetEdgesLabel ( MbeLabelState, void * = c3d_null) const; + size_t SetEdgesLabel ( MbeLabelState, void * = nullptr) const; /// \ru Установить заданную метку всем граням оболочки. \en Set the given label for all faces of the shell. - void SetFacesLabel ( MbeLabelState, void * = c3d_null) const; + void SetFacesLabel ( MbeLabelState, void * = nullptr) const; /// \ru Выдать множество вершин оболочки. \en Get a set of vertices of the shell. template @@ -327,7 +327,7 @@ public : void GetEdgesSet( EdgesSet & edges ) const { size_t i, facesCnt = faceSet.size(); for ( i = 0; i < facesCnt; ++i ) { - if ( faceSet[i] != c3d_null ) + if ( faceSet[i] != nullptr ) faceSet[i]->GetEdgesSet( edges ); } } @@ -336,7 +336,7 @@ public : void GetEdges( EdgesVector & edges, EdgesSet & edgesCache ) const { size_t i, facesCnt = faceSet.size(); for ( i = 0; i < facesCnt; ++i ) { - if ( faceSet[i] != c3d_null ) + if ( faceSet[i] != nullptr ) faceSet[i]->GetEdges( edges, edgesCache ); } } @@ -352,11 +352,11 @@ public : size_t allEdgesCnt = 0; for ( i = 0; i < facesCnt; ++i ) { const MbFace * face = faceSet[i]; - if ( face != c3d_null ) { + if ( face != nullptr ) { size_t loopsCnt = face->GetLoopsCount(); for ( size_t j = 0; j < loopsCnt; ++j ) { const MbLoop * loop = face->_GetLoop( j ); - if ( loop != c3d_null ) + if ( loop != nullptr ) allEdgesCnt += loop->GetEdgesCount(); } } @@ -365,7 +365,7 @@ public : edges.reserve( edges.size() + allEdgesCnt ); for ( i = 0; i < facesCnt; ++i ) { - if ( faceSet[i] != c3d_null ) + if ( faceSet[i] != nullptr ) faceSet[i]->GetEdges( edges ); } } @@ -387,7 +387,7 @@ public : void GetFacesSet( FacesSet & faces ) const { for ( size_t k = 0, kcnt = faceSet.size(); k < kcnt; ++k ) { - if ( faceSet[k] != c3d_null ) + if ( faceSet[k] != nullptr ) faces.insert( faceSet[k] ); } } @@ -646,7 +646,7 @@ public : \param[out] extTolCubes - \ru Контейнер для расширенных габаритов граней оболочки с неточными ребрам. \en Container of extended bounding boxes of shell faces that contain inexact edges. \~ */ - void AddYourGabaritTo( MbCube & gab, c3d::IndexCubeVector * extTolCubes = c3d_null ) const; + void AddYourGabaritTo( MbCube & gab, c3d::IndexCubeVector * extTolCubes = nullptr ) const; /// \ru Рассчитать габарит оболочки. \en Calculate bounding box of the shell. void CalculateGabarit( MbCube & ) const; /// \ru Рассчитать габарит в локальной системы координат, заданной матрицей matrToLocal преобразования в неё \en Calculate bounding box in the local coordinate system which is given by the matrix 'matrToLocal ' of transformation to it. @@ -815,7 +815,7 @@ public : bool MergeSimilarFaces( SimpleName simMainName = c3d::SIMPLENAME_MAX ); /// \ru Создан ли временный объект сопровождения? \en Is a temporary object for the maintenance created? - bool IsTemporal() const { return (temporal != c3d_null); } + bool IsTemporal() const { return (temporal != nullptr); } /// \ru Удалить временный объект сопровождения. \en Delete a temporary maintenance object. void RemoveTemporal( bool removeFacesTemporal = false ) const; /// \ru Создать новый временный объект сопровождения. \en Create new temporary maintenance object. @@ -859,10 +859,10 @@ MbFaceShell::MbFaceShell( const Faces & initFaces ) : MbTopItem() , faceSet ( initFaces.size(), 1 ) , closed ( true ) - , temporal ( c3d_null ) + , temporal ( nullptr ) { for ( size_t i = 0, cnt = initFaces.size(); i < cnt; ++i ) { - if ( initFaces[i] != c3d_null ) + if ( initFaces[i] != nullptr ) AddFace( *initFaces[i] ); } } @@ -1014,12 +1014,12 @@ void MbFaceShell::GetItems( TopologyItemsVector & list ) const size_t i, fcount = faceSet.size(); for ( i = 0; i < fcount; ++i ) { const MbFace * face = faceSet[i]; - if ( face == c3d_null ) + if ( face == nullptr ) continue; for ( size_t j = 0, lcount = face->GetLoopsCount(); j < lcount; ++j ) { const MbLoop * loop = face->_GetLoop(j); - if ( loop == c3d_null ) + if ( loop == nullptr ) continue; size_t ecount = loop->GetEdgesCount(); @@ -1040,7 +1040,7 @@ void MbFaceShell::GetItems( TopologyItemsVector & list ) const // опускаем флаг // reset labels for ( i = 0; i < fcount; ++i ) { MbFace * face = faceSet[i]; - if ( face == c3d_null ) + if ( face == nullptr ) continue; list.push_back( face ); @@ -1050,7 +1050,7 @@ void MbFaceShell::GetItems( TopologyItemsVector & list ) const for ( size_t j = 0, lcount = face->GetLoopsCount(); j < lcount; ++j ) { const MbLoop * loop = face->_GetLoop(j); - if ( loop == c3d_null ) + if ( loop == nullptr ) continue; for ( size_t k = 0, ecount = loop->GetEdgesCount(); k < ecount; ++k ) { @@ -1104,7 +1104,7 @@ bool MbFaceShell::FindIndexByFaces( const FacesPointersVector & initFaces, ItemI for ( size_t i = 0; i < initFacesCount; ++i ) { const MbFace * face = initFaces[i]; - if ( face != c3d_null ) { + if ( face != nullptr ) { size_t i0 = SYS_MAX_T; c3d::ConstFaceIndexMap::iterator it = fiMap.find( face ); if ( it != fiMap.end() ) @@ -1120,7 +1120,7 @@ bool MbFaceShell::FindIndexByFaces( const FacesPointersVector & initFaces, ItemI if ( directFind ) { for ( size_t i = 0; i < initFacesCount; ++i ) { const MbFace * face = initFaces[i]; - if ( face != c3d_null ) { + if ( face != nullptr ) { size_t i0 = GetFaceIndex( *face ); if ( i0 != SYS_MAX_T ) { index.Init( *face, i0 ); @@ -1145,7 +1145,7 @@ bool MbFaceShell::FindConstFacesByIndex( const ItemIndices & indices, ConstFaces for ( size_t j = 0, indicesCnt = indices.size(); j < indicesCnt; ++j ) { MbItemIndex & index = const_cast(indices[j]); // у stl доступ честный как const, у SArray дает на редактирование findFace = FindFaceByIndex( index ); - if ( findFace != c3d_null ) { + if ( findFace != nullptr ) { initFaces.push_back( findFace ); ::DetachItem( findFace ); } @@ -1166,7 +1166,7 @@ bool MbFaceShell::FindFacesByIndex( const ItemIndices & indices, FacesPointersVe for ( size_t j = 0, indicesCnt = indices.size(); j < indicesCnt; ++j ) { MbItemIndex & index = const_cast(indices[j]); // у stl доступ честный как const, у SArray дает на редактирование findFace = const_cast(FindFaceByIndex( index )); - if ( findFace != c3d_null ) { + if ( findFace != nullptr ) { initFaces.push_back( findFace ); ::DetachItem( findFace ); } @@ -1185,15 +1185,15 @@ bool MbFaceShell::GetBoundaryEdges( ConstEdgesVector & boundaryEdges ) const const size_t boundaryCnt = boundaryEdges.size(); for ( size_t i = 0, facesCnt = faceSet.size(); i < facesCnt; ++i ) { const MbFace * face = faceSet[i]; - if ( face == c3d_null ) + if ( face == nullptr ) continue; for ( size_t j = 0, loopsCnt = face->GetLoopsCount(); j < loopsCnt; ++j ) { const MbLoop * loop = face->_GetLoop( j ); - if ( loop == c3d_null ) + if ( loop == nullptr ) continue; for ( size_t k = 0, edgesCnt = loop->GetEdgesCount(); k < edgesCnt; ++k ) { const MbOrientedEdge * orientEdge = loop->_GetOrientedEdge( k ); - if ( orientEdge != c3d_null ) { + if ( orientEdge != nullptr ) { c3d::ConstEdgeSPtr edge( &orientEdge->GetCurveEdge() ); if ( edge->IsBoundaryFace() ) boundaryEdges.push_back( edge ); @@ -1294,14 +1294,14 @@ public: if ( controlFaces.size() > 0 && sortedDelFaces.size() > 0 ) { for ( size_t k = controlFaces.size(); k--; ) { if ( std::binary_search( sortedDelFaces.begin(), sortedDelFaces.end(), controlFaces[k] ) ) { - controlFaces[k] = c3d_null; + controlFaces[k] = nullptr; res = true; } } if ( res ) { std::sort( controlFaces.begin(), controlFaces.end() ); controlFaces.erase( std::unique( controlFaces.begin(), controlFaces.end() ), controlFaces.end() ); - if ( controlFaces.front() == c3d_null ) + if ( controlFaces.front() == nullptr ) controlFaces.erase( controlFaces.begin() ); } } @@ -1335,19 +1335,19 @@ private: public: /// \ru Конструктор по умолчанию \en Default constructor - MbEdgeFunction () : edge(c3d_null), function(c3d_null), slideway(c3d_null) {} + MbEdgeFunction () : edge(nullptr), function(nullptr), slideway(nullptr) {} /// \ru Конструктор по ребру и функции. \en Constructor by an edge and function. - MbEdgeFunction ( const MbCurveEdge * e, const MbFunction * f ) : edge(e), function(f), slideway(c3d_null) {} + MbEdgeFunction ( const MbCurveEdge * e, const MbFunction * f ) : edge(e), function(f), slideway(nullptr) {} /// \ru Конструктор по ребру и опорной кривой. \en Constructor by an edge and a supporting curve. - MbEdgeFunction ( const MbCurveEdge * e, const MbCurve3D * c ) : edge(e), function(c3d_null), slideway(c) {} + MbEdgeFunction ( const MbCurveEdge * e, const MbCurve3D * c ) : edge(e), function(nullptr), slideway(c) {} /// \ru Конструктор по другому ребру с функцией. \en Constructor by other edge with a function. MbEdgeFunction ( const MbEdgeFunction & other ) : edge(other.edge), function(other.function), slideway(other.slideway) {} ~MbEdgeFunction() {} public: /// \ru Инициализация по ребру и функции. \en Initialization by an edge and a function. - void Init( const MbCurveEdge * e, const MbFunction * f ) { edge = e; function = f; slideway = c3d_null; } + void Init( const MbCurveEdge * e, const MbFunction * f ) { edge = e; function = f; slideway = nullptr; } /// \ru Инициализация по ребру и опорной кривой. \en Initialization by an edge and a supporting curve. - void Init( const MbCurveEdge * e, const MbCurve3D * c ) { edge = e; function = c3d_null; slideway = c; } + void Init( const MbCurveEdge * e, const MbCurve3D * c ) { edge = e; function = nullptr; slideway = c; } /// \ru Дать ребро. \en Get an edge. const MbCurveEdge * Edge() const { return edge; } /// \ru Дать функцию изменения радиуса. \en Get a function of radius changing. @@ -1545,7 +1545,7 @@ public: /// \ru Конструктор по умолчанию. \en Default constructor. MbPntLoc() : pntLoc ( iloc_Undefined ) - , shell ( c3d_null ) + , shell ( nullptr ) , ind ( SYS_MAX_T ) , dist ( MB_MAXDOUBLE ) , n ( MB_MAXDOUBLE ) @@ -1569,7 +1569,7 @@ public: /// \ru Получить положение пространственной точки. \en Get location of spatial point MbeItemLocation GetLocation() const { return pntLoc; } /// \ru Выбрана ли грань? \en Is a face chosen? - bool IsFaceSelected() const { return ((shell != c3d_null) && (ind < shell->GetFacesCount()) && (shell->GetFace(ind) != c3d_null)); } + bool IsFaceSelected() const { return ((shell != nullptr) && (ind < shell->GetFacesCount()) && (shell->GetFace(ind) != nullptr)); } /// \ru Выполнена ли классификация по грани? \en Is classification by the face performed? bool IsFaceData() const { return (IsFaceSelected() && !shell->IsTemporal(ind)) ? true : false; } /// \ru Выполнена ли классификация по грани сопровождения? \en Is classification by the face of maintenance performed? @@ -1578,7 +1578,7 @@ public: /// \ru Получить индекс грани. \en Get an index of a face. size_t GetFaceIndex() const { return ind; } /// \ru Получить грань. \en Get a face. - const MbFace * GetFace() const { return (IsFaceSelected() ? shell->GetFace(ind) : c3d_null); } + const MbFace * GetFace() const { return (IsFaceSelected() ? shell->GetFace(ind) : nullptr); } /// \ru Получить расстояние до точки проекции. \en Get the distance to projection point. double GetDistance() const { return dist; } /// \ru Получить двумерную точку проекции. \en Get two-dimensional projection point. @@ -1598,7 +1598,7 @@ public: bool IsCorner() const { return corn; } /// \ru Получить поверхности грани. \en Get surfaces of a face. - const MbSurface * GetFaceSurface() const { return (IsFaceSelected() ? &shell->GetFace(ind)->GetSurface() : c3d_null); } + const MbSurface * GetFaceSurface() const { return (IsFaceSelected() ? &shell->GetFace(ind)->GetSurface() : nullptr); } /// \ru Получить ориентацию грани относительно поверхности. \en Get face orientation relative a surface. bool GetFaceSense() const { return (IsFaceSelected() ? shell->GetFace(ind)->IsSameSense() : true); } /// \ru Получить поверхность смежной грани. \en Get a surface of adjacent face. @@ -1614,7 +1614,7 @@ public: void Reset() { pntLoc = iloc_Undefined; - shell = c3d_null; + shell = nullptr; ind = SYS_MAX_T; dist = MB_MAXDOUBLE; n = MB_MAXDOUBLE; @@ -1682,7 +1682,7 @@ public: */ // --- template -size_t SetEdgesLabel( const FacesVector & faceSet, MbeLabelState label, void * key = c3d_null ) +size_t SetEdgesLabel( const FacesVector & faceSet, MbeLabelState label, void * key = nullptr ) { size_t maxCount = 1; diff --git a/C3d/Include/topology_item.h b/C3d/Include/topology_item.h index 79f517a..63d2d8e 100644 --- a/C3d/Include/topology_item.h +++ b/C3d/Include/topology_item.h @@ -103,11 +103,11 @@ public: /// \ru Деструктор. \en Destructor without parameters. ~MbLabel(); /// \ru Установить частную или собственную метку (соответствующую ключу). \en Set own or private label (according to the key). - void SetLabel( const MbeLabelState, void * key = c3d_null ); + void SetLabel( const MbeLabelState, void * key = nullptr ); /// \ru Установить частную или собственную метку (соответствующую ключу). \en Set own or private label (according to the key). void SetLabel( const MbeLabelState, void * key, bool setLock ); /// \ru Получить частную или собственную метку (соответствующую ключу). \en Get own or private label (according to thew key). - int8 GetLabel( void * key = c3d_null ); + int8 GetLabel( void * key = nullptr ); /// \ru Удалить частные метки(освободить память) соответствующие ключу. \en Remove private labels (free memory) according to the key. void DeletePrivate( void * key ); /// \ru Присвоить значение собственной метке. \en Assign values to own label. @@ -232,7 +232,7 @@ public : \en Registrator. \~ \ingroup Topology_Items */ - virtual void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = c3d_null ) = 0; + virtual void Transform( const MbMatrix3D & matr, MbRegTransform * iReg = nullptr ) = 0; /** \brief \ru Сдвинуть вдоль вектора. \en Move along a vector. \~ @@ -250,7 +250,7 @@ public : \en Registrator. \~ \ingroup Topology_Items */ - virtual void Move ( const MbVector3D & to, MbRegTransform * iReg = c3d_null ) = 0; + virtual void Move ( const MbVector3D & to, MbRegTransform * iReg = nullptr ) = 0; /** \brief \ru Повернуть вокруг оси. \en Rotate around an axis. \~ @@ -270,7 +270,7 @@ public : \en Registrator. \~ \ingroup Topology_Items */ - virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = c3d_null ) = 0; + virtual void Rotate ( const MbAxis3D & axis, double angle, MbRegTransform * iReg = nullptr ) = 0; /// \ru Вычислить расстояние до точки. \en Calculate the distance to a point. virtual double DistanceToPoint( const MbCartPoint3D & ) const = 0; @@ -324,15 +324,15 @@ public : bool IsOwnChangedWeakly() const; /// \ru Получить метку. \en Get label. - MbeLabelState GetLabel( void * key = c3d_null ) const { return (MbeLabelState)label.GetLabel(key); } + MbeLabelState GetLabel( void * key = nullptr ) const { return (MbeLabelState)label.GetLabel(key); } /// \ru Установить метку. \en Set a label of the loop. - void SetOwnLabel( MbeLabelState l, void * key = c3d_null ) const { label.SetLabel( l, key ); } + void SetOwnLabel( MbeLabelState l, void * key = nullptr ) const { label.SetLabel( l, key ); } /// \ru Установить метку. \en Set a label of the loop. void SetOwnLabel( MbeLabelState l, void * key, bool setLock ) const { if ( setLock || GetUseCount() > 1 ) return SetOwnLabel( l, key ); label.SetLabel( l, key ); } /// \ru Предназначен ли объект для удаления? Определяется по меткам. \en Is this object intended for deletion? This is defined by labels. - bool ToDelete() const { return( (MbeLabelState)label.GetLabel(c3d_null) == ls_Delete || (MbeLabelState)label.GetLabel(c3d_null) == ls_Error ); } + bool ToDelete() const { return( (MbeLabelState)label.GetLabel(nullptr) == ls_Delete || (MbeLabelState)label.GetLabel(nullptr) == ls_Error ); } /// \ru Удалить частную метку. \en Remove private label. - void RemovePrivateLabel ( void * key = c3d_null ) const { label.DeletePrivate(key); } + void RemovePrivateLabel ( void * key = nullptr ) const { label.DeletePrivate(key); } /// \ru Копирование данных объекта. \en Copying of the object data. void Assign( const MbTopologyItem & ); @@ -403,11 +403,11 @@ public: /// \ru Тип элемента. \en A type of element. virtual MbeTopologyType IsA() const; // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Move along a vector. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); //\ru Повернуть вокруг оси. \en Rotate around an axis. - virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = c3d_null ); + virtual void Rotate ( const MbAxis3D &, double, MbRegTransform * = nullptr ); public: // \ru Вычислить расстояние до точки. \en Calculate the distance to a point. virtual double DistanceToPoint( const MbCartPoint3D & ) const; diff --git a/C3d/Include/wire_frame.h b/C3d/Include/wire_frame.h index f863e6e..6e4af86 100644 --- a/C3d/Include/wire_frame.h +++ b/C3d/Include/wire_frame.h @@ -63,17 +63,17 @@ public : /// \ru Конструктор без параметров. \en Constructor without parameters. MbWireFrame(); /// \ru Конструктор по кривой и строителю. \en Constructor by a curve and creator. - MbWireFrame( const MbCurve3D &, const MbCreator * = c3d_null ); + MbWireFrame( const MbCurve3D &, const MbCreator * = nullptr ); /// \ru Конструктор по множеству кривых и строителю. \en Constructor by a set of curves and creator. - MbWireFrame( const RPArray &, const MbCreator * = c3d_null ); + MbWireFrame( const RPArray &, const MbCreator * = nullptr ); /// \ru Конструктор по множеству кривых и строителю. \en Constructor by a set of curves and creator. - MbWireFrame( const c3d::SpaceCurvesSPtrVector &, const MbCreator * = c3d_null ); + MbWireFrame( const c3d::SpaceCurvesSPtrVector &, const MbCreator * = nullptr ); /// \ru Конструктор по ребру и строителю. \en Constructor by an edge and creator. - MbWireFrame( const MbEdge &, const MbCreator * = c3d_null, bool same = true ); + MbWireFrame( const MbEdge &, const MbCreator * = nullptr, bool same = true ); /// \ru Конструктор по множеству рёбер и строителю. \en Constructor by a set of edges and creator. - MbWireFrame( const RPArray &, const MbCreator * = c3d_null, bool same = true ); + MbWireFrame( const RPArray &, const MbCreator * = nullptr, bool same = true ); /// \ru Конструктор по множеству рёбер и строителю. \en Constructor by a set of edges and creator. - MbWireFrame( const c3d::WireEdgesSPtrVector &, const MbCreator * = c3d_null, bool same = true ); + MbWireFrame( const c3d::WireEdgesSPtrVector &, const MbCreator * = nullptr, bool same = true ); /// \ru Деструктор. \en Destructor. virtual ~MbWireFrame(); @@ -83,10 +83,10 @@ public : // \ru Общие функции геометрического объекта. \en Common functions of a geometric object. virtual MbeSpaceType IsA() const; // \ru Тип объекта. \en An object type. - virtual MbSpaceItem & Duplicate( MbRegDuplicate * iReg = c3d_null ) const; // \ru Создать копию. \en Create a copy. - virtual void Transform( const MbMatrix3D &, MbRegTransform * = c3d_null ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. - virtual void Move ( const MbVector3D &, MbRegTransform * = c3d_null ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. - virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = c3d_null ); // \ru Повернуть вокруг оси. \en Rotate about an axis. + virtual MbSpaceItem & Duplicate( MbRegDuplicate * iReg = nullptr ) const; // \ru Создать копию. \en Create a copy. + virtual void Transform( const MbMatrix3D &, MbRegTransform * = nullptr ); // \ru Преобразовать согласно матрице. \en Transform according to the matrix. + virtual void Move ( const MbVector3D &, MbRegTransform * = nullptr ); // \ru Сдвинуть вдоль вектора. \en Translate along a vector. + virtual void Rotate ( const MbAxis3D &, double angle, MbRegTransform * = nullptr ); // \ru Повернуть вокруг оси. \en Rotate about an axis. virtual bool IsSame ( const MbSpaceItem &, double accuracy = LENGTH_EPSILON ) const; // \ru Являются ли объекты равными? \en Are the objects equal? virtual bool IsSimilar( const MbSpaceItem & ) const; // \ru Являются ли объекты подобными? \en Are the objects similar? virtual bool SetEqual ( const MbSpaceItem & ); // \ru Сделать объекты равными. \en Make the objects equal. @@ -114,9 +114,9 @@ public : /// \ru Выдать количество ребер каркаса. \en Get the number of edges of the frame. size_t GetEdgesCount() const { return edges.size(); } /// \ru Выдать объект по индексу. \en Get the item by index. - const MbEdge * GetEdge( size_t i ) const { return (i < edges.size()) ? edges[i] : c3d_null; } + const MbEdge * GetEdge( size_t i ) const { return (i < edges.size()) ? edges[i] : nullptr; } /// \ru Выдать объект по индексу для возможного редактирования. \en Get the item by index for the possible editing. - MbEdge * SetEdge( size_t i ) { return (i < edges.size()) ? edges[i] : c3d_null; } + MbEdge * SetEdge( size_t i ) { return (i < edges.size()) ? edges[i] : nullptr; } /// \ru Получить ребра. \en Get edges. template @@ -211,10 +211,10 @@ public : If beginSafe == false then the edge saves its ending piece. According to the parameter 'eps' drop out value in the container 'params', coinciding with each other and with the initial and final parameters of the curve. The container 'edges' contains cut parts. \~ - \params[in, out] targetEdge - \ru Ребро для разрезания. Возвращается урезанный кусок с учетом флага beginSafe или c3d_null, + \params[in, out] targetEdge - \ru Ребро для разрезания. Возвращается урезанный кусок с учетом флага beginSafe или nullptr, если параметр разрезания находится на расстоянии меньшим еps от соответствующего конца кривой, \en Edge for cutting. The return value of 'targetEdge' is the shortened edge according to 'beginSafe' flag - or c3d_null, if the cut param in 'params' lies at the distance less than 'eps' from the corresponding end of the curve, + or nullptr, if the cut param in 'params' lies at the distance less than 'eps' from the corresponding end of the curve, \param[in] params - \ru Параметры кривой для разбиения ребра, \en Parameters of intersection curve of edge to split, \~ \param[in] beginSafe - \ru Ребро сохранит начальную часть (true) или ребро сохранит конечную часть (false), @@ -326,7 +326,7 @@ void MbWireFrame::GetCurves( CurvesVector & curves ) const c3d::SpaceCurveSPtr curve; for ( size_t k = 0; k < edgesCnt; ++k ) { const MbEdge * edge = edges[k]; - if ( edge != c3d_null ) { + if ( edge != nullptr ) { curve = const_cast( &edge->GetCurve() ); curves.push_back( curve ); ::DetachItem( curve ); @@ -342,7 +342,7 @@ template void MbWireFrame::AddEdges( const WireEdgesVector & items, bool same ) { bool add = false; - MbRegDuplicate * iReg = c3d_null; + MbRegDuplicate * iReg = nullptr; MbAutoRegDuplicate autoReg( iReg ); size_t addCnt = items.size(); @@ -352,7 +352,7 @@ void MbWireFrame::AddEdges( const WireEdgesVector & items, bool same ) for ( size_t k = 0; k < addCnt; ++k ) { const MbEdge * item = items[k]; - if ( item != c3d_null ) { + if ( item != nullptr ) { edge = same ? const_cast(item) : item->DataDuplicate( iReg ); edge->AddRef(); edges.push_back( edge ); @@ -382,7 +382,7 @@ template void ExtractCurvesDeleteFrame( MbWireFrame *& wireFrame, CurvesVector & curves ) { - if ( wireFrame != c3d_null ) { + if ( wireFrame != nullptr ) { c3d::SpaceCurvesSPtrVector wireCurves; wireFrame->GetCurves( wireCurves ); ::DeleteItem( wireFrame ); @@ -393,7 +393,7 @@ void ExtractCurvesDeleteFrame( MbWireFrame *& wireFrame, curves.reserve( curves.size() + wireCurvesCnt ); for ( size_t k = 0; k < wireCurvesCnt; ++k ) { MbCurve3D * curve = ::DetachItem( wireCurves[k] ); - if ( curve != c3d_null ) { + if ( curve != nullptr ) { curves.push_back( curve ); } } @@ -418,14 +418,14 @@ inline void ExtractCurveDeleteFrame( MbWireFrame *& wireFrame, MbCurve3D *& curve ) { - if ( wireFrame != c3d_null ) { + if ( wireFrame != nullptr ) { c3d::WireEdgeSPtr edge( wireFrame->DetachEdge( 0 ) ); // \ru Отцепить объект \en Detach an object ::DeleteItem( wireFrame ); - if ( edge != c3d_null ) { + if ( edge != nullptr ) { curve = &edge->SetCurve(); ::AddRefItem( curve ); - edge = c3d_null; + edge = nullptr; ::DecRefItem( curve ); } } @@ -453,7 +453,7 @@ void ExtractCurveDeleteFrame( MbWireFrame *& wireFrame, MATH_FUNC (bool) CreateWireFrame( MbWireFrame *& result, const RPArray & curves, const MbSNameMaker & snMaker, - const MbCreator * creator = c3d_null ); + const MbCreator * creator = nullptr ); //------------------------------------------------------------------------------ @@ -477,7 +477,7 @@ MATH_FUNC (bool) CreateWireFrame( MbWireFrame *& result, MATH_FUNC (bool) CreateWireFrame( MbWireFrame *& result, const MbCurve3D & curve, const MbSNameMaker & snMaker, - const MbCreator * creator = c3d_null ); + const MbCreator * creator = nullptr ); #endif // __WIRE_FRAME_H diff --git a/C3d/Lib/x32/Debug/c3d.lib b/C3d/Lib/x32/Debug/c3d.lib index 5a7e217207b65aaa4b5880170c384cb2587af4b0..e70e4e70df4b4199bbf1cbd5758d4454fce223ba 100644 GIT binary patch delta 1179722 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

n8)UEMDE*f5+z4Or3=}V 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%0APlb`bfSuT)< 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

YcFOWj4#fdzLS$)z67?qFoWGFz!C&{J@h)tf$ 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

w8nxa4)LYT!0B`~c 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�ju```r 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
eryyq-=S)$ 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
q@q~SUpO-R#$u=`wFj2C7By=P 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 z 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
}H@)cFq5=Cq<qpcu%?hW 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⪼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

R9b+$m4#Fc();p0tK1^{b)Q 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≈k+XZsX2U^4$J+TNOPwexvYro`jRFUrP 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 F`2X0zbnXBE delta 1367842 zcmXus4P4Y!_CN5mu4_i7M#d768JQWmW@N6pW@fAz`7G(PP9x%d42p0Imfm=+oxpoQHZcHg`?bEi$47UxIwnVzCnwoz1M zA4RR2OetSX6UOTt#A44}6h>12Vs=d=W*F&Jc9oC;bjGbh|NH`C#=s>a{=0HwhTRqs zRip(|R8cT_Gd(^R5y6_EWKPCy@Pvq@d%K909!OO_J4dBZHoa9O&5a!2|H-b~Ciu3SXDGoG04!*Y>w?*d|J6Sj%snr>p| z+t(=52gnSbL`KkgjY8j0Ppr5%Or-hy6U%)gP$bYZ-el@c92B& zoE#)C>%)EQoq8p26?s|9Iprff2`j_TvGTD>&0_Mh7xA;K`ik;ZFWyPmK40kz!SlmD zBCm!bbQYC@6S{Aw2_w`-6tG}#}d>0JA~tK4sPd=*W2$C zj|iK(eWFS8Zi*&P{}xg3awV~(hZc$4*tx{Kr#qC7Q_0Ip@k&_Uapm85Qnn{tc)qJ5 z;aNZ)$o}xW$UGB9%++WUy2^_hp}>K%Pp&5W61!fYZ83=5&LmmwF%w(S|91&M`iQs6=9leC1nJ0gpA$Oh5m)} z#B_-nBB~jW2h)T#KAni2WIVc1c#f?nrrS4PL^V6{cqbVSEEC3Sb`XowKE6OvpxeJf zM15R@+eKvfV5NxqXb~}8Ymta*IYi9R94n$eo`}a!B;6;+Mby43Vut2U;kYxHSlP}C z%9hJi2D!`539aJcy~MPer;Du2ImDv&;q3(7Cpe!WE6c9fQYZ`3zt2zx5-1(aJLfB_ zc90pOK2mh8qxi)~DM#xNp1u9V+;cB8ja;uy6WI}QBp%&N*%0+%oX~x|nOORFF6Fd? z(!soHhKOoejdx@<{*wtJd)a;xkBm|_M16Q%7~bz87Ju3%(wc@Ttw|fEjJg_OeyWF< zervGuri1iQ{9uUiJh+{h^;D&B>>ncLY8ofvPs|~vi$^U8`Zotf{E1rJUrYM8ri-jU zZ6apv+eTImMSM@1(7#oQ2UOzgKB3>Snpk{~pU}TNpIH3!RTO{AY%)c3Qv9LwfVN^` zC7B*yLZ<)AC)0{U5RI>g$h3SjB7XjGJH>Z~0sg&eTup>|`h%i5!C%f~MW z-wrF~h-`S4(0M!2P-&fL$A^T+(~R1xnXDg}MaAzHV#V{iM8&x?#ES36ePFDuR-Py! zBYSzW^28O~zJj+r4!;oUiNXe@poOBCv&jc%ndU@MI72B2#{D#pehV?3ZKgM=peT7+yrik|sfxJWrRftdFToY&$C;uR`hY!u#u zMWkFtgfGS@?SbTN57bb2g!O@`#PY5VP{w;G4~p*@QS2+Im^~CNbf#)z`YqFhX%cEX z&^;HfY+g({_8clRcxLtjk#g)1e&Iv-<$6Iw@nEa)EDj@P?F$f&PxZuHO?F{@U^9Nf z%~Tv_RqUt>K=(qo&r(FFPEcONX~?S2iD%wBNG#<mSkt%|+AS(Bo+joU#7Dt? zT%!E6kh}tq`w4#BtE5+xmu28U6IFA!a|+A%vxrqJxFWPQcG9@0_^(yy zUObK87-~?F2(Tyd@&-=3T^c9!?cyYxWZJeue`UvgT@56jn07St9Z;I*7%8HiA}g4aI+sCiC;{ zXdTgf9_^s`?zt3y3@zrdewcvU+o&wcB6Q``NmNWB9V@R9`ucui-iiU?`g1=qYvpdV z|0vS><|)_JP#SppQQ1KGlxC4OwS$=PHVnqI($(_X^p5d!7?ykM4iOIll7o028On15!Hi!A?Uu`B@CbT z5wrB37N(dPl>AeN(5=K{Kwp_AEN2|VHjbSr9EZf>sGX>(D4#b!pKLn0H zYJ@HxbwB90D2^+WiN*dqMd+>QvO&S)?V{qII%3vzi-B5?Jnpn(dc?lyRh|2F0I;~+p>7eYj9#IkIAy)SKL{V|?L}DdxEEdHB7!8BvWVa|T*-9+_ z9v4g`?_n$M*9*rBi-~1c?i0BUe#BgxazyThAkw%fjzSFxj_L)%ePb-K;$IR(RLKfr zx*Zs3fVXj%^8I=8f@T;LnU|XI>Y7OByx`+NL@)Za2w^{#Lkb}hS-)=3xFF-L;X;>> zI$eYyhLFC_EbK=olIYq(b}&v`A#?=?NWm{xumX=gF6`amB#s`$&!Mw1tzGD}J;d~{ zUKTlPv@Xh7(?!;#H6p1xoS5bG9+BL)mzZZqhDb(li6y;&JP=q;M~L$4Mu_D^tq^64 z=MnRsM|I6EqLE|2hbtGl$jh|f@m8{nQ^DDVp>=5U4zP4g=uR&bk9xpfm2fODiuWci_vhrDNN zMA@l)V$SZd!nkV>iBFOLVZYdw!Odi3KW-AHTep*#8BQj4<5Z@R>8@d6JcZ#in5Ik@ z#;@_i?8rEgxjcecssCo5U_`jC&SwT9Ou=n|?@fX0@p$2f=tt(cO+FZ~&ec%dyUz!2 z*}X6iw*|g85AMSc2n;yyn?arvHlK5d=g9nfmvV6hnW12Nt0-w1AteVfhqMbAVS_Pg zn(~*OWYkbZFX~nnuApeP$SCaBmlG@a-$fq_qJ=hGXcL}`7l>{6Wu?fi=_FS0cAN4& zQ33lwG2L{U#Pl>Wv71szuRC*~Ss6eSl2NLh^t|1DB3 zU7!+SMFg~TiUkp4fjbZQEJlQx%|5dc;f~!t+B|##Gxms*_t%rygC~RnBpsQSr5E|% zRuVHtA@d2*6Wf$)Ln)d~*r8n8jN33_zA|wc9=D9_SEFKLehU=s>So;0Or?vLiSpY6 zi4|N}EK08P5VPFhDmGl0kIx=P_Y2EZe-by_$pS@TdXfBFD2X5ZDH+@k?-M0^^6|p* zsqpd|p%wo32(hfGIL{&N95UD7ULGk*7azhehJ;glkkC?kh#BV%D3NXqg0wL=!ShEoXc)u47b+}2t|n&u6rV2?+}5pxjHLo_{_H2R z{I;P++(yQ8HlGnh7#ib)`-j*?r4R26`whtrFogswGh4`{adBgnGAoWuVElHj4^EeF z>rorlio)+~#7zDX!Z;qkxY&URN31?)5YM2t+%Jj?Fa`vNvtDS|j3H*aVIt0d6nRzt zqU57^Vx<9s1~;h<5jzfMIZF|1R}y04N5z{$G(^;oI|a|j04rm+4E!s({UeKV||OT z4E7Q;wls_6AGC6u9_3WHH$fzy@gr8a_l(G^TtdvyjR__ZhX_aeh4BPxL@?cq&z0Sd zDi(|<&`AN4|6XCg-;c!nDzZZ<;a!7bEq{=T!I2vwG;b<$@~L=ovxt5O?E`xd6$o3r zPkCqo?uQ3kgy%o0#OybOhz-9lBZeG_&qc(GXeYXbGy4EB&1q{Qk-ZRiETr6*R*90} z$s}$@=MxIf;PYZXctmEzAgXM%4+s5x?1=C>4q*1-5n&lL;w?9#-KY|#tB_#_!>gV_mQ|g6>l}%a89`sX9^28D${X47>998u6 zJhR}g7N2lL2yOSlW3|u-G%UR$zu%9T;m~#w^Uy*Pix*Q2d$3(u+=kn2WPiHJX9glV zCjY^_ALM3si}cq=h~+-9OqBj5fW)|&R4STCD;?K_JGTn+9Q;P??pBeCd><+SySOKVPOa z_A6#vA?w!DB179AP8pE>*esDbm``G824zClq+sE?HG#ymbL0Zc*BGRLIeUt57OW>$ zx&RdmdmvPKsFzB?y%K!@wi?qe;4EqpnzLvzzQEw}gGIu5Z!NL%-8o9)MJfm5$y8zb zYb!CsP>3+Tl|aliafVMdVl^di>{YaON@i~b31i#^e3Ta`ray>j6mx2g@-4>btT$Tu zb{uYxBYR1Y;CYr!9zC;u)m`MUnuvUbk=$15P>TxQ9iWO}>NEWV`MNZ^%6+Ag|yh-=Z z5algfi5cH zprNPxo>3V8j#i3U(5iv{RG1G|GMs|GSz_G{{Uicb(K^wC*h6tKl}hXwieoWBBH@K_ zQkoHA%OMfdR8BD(7nnd4@1RBl&$q|{g56dxa${3fC}n&i{g_DF>$mI zSx^i_AStv?qyW41EK>tF% zFy6R`So~?!|M92CQj}@852o8qi%9npQY(;lb-6HyV894@cg`2ZFLV-1nKMHe>M?Bx zrl7IHctB6$vmr7<+WTk+AlWZi#5{bNg!V8#f5?4zjz}B7gjfpBQSlE!KFWR6B0NWtI{+>B(IMP1M4oPRAi*>Z z^*b289~Mcme#G>F9U|sU{K5iF?VG`5%|Rv`+$Zg=WkC&I2>c^oIMNe{ zW!`~w&K(gNWquQ^bWNsAaJ@c8IMU7$EBzmqTY*QvU%1*l#N1Kk!jlk6LR&^2_R3O` zACN%I(cLAq>oMC2`L~uU^_wZbUPJNWB2n6lQ4VCZ&JvFGL@eWzMv?pOR(wP_op!b< zSI{c5kH?6zJM8!f>|{7QMkK`|u?+=PIJlu=_90Qwh@rjMM+I8rJ~A569fp{`|*yXr*oXU)Wn z2K474_TfIEe~O63K5Q1Ab@jwbx1$HdPVN*LAJ4;CGLPIg95;|VXB|1U%(0^TjN zl@pkTXB}shA|rX(0c6CPyG}V?Ltf_8D+QP_Wz`nth129^#raCf4)U_sFq_Kic7lc? z-%ru(-pBFO`XJU2aI8piMCQ_y$!j5{8d`$>3^NR;XQt>=uQAzmd!0?6=l{i33 z0%8K`ULM5fkD{c?38)J9hyPR z`ftprgR?Y6xbL!%2)&5!UnG6R64JPcxoNp_V+6&pAhh=^5a&I+@sJYKjr+UF{>W)% z*?O{z5yTNH{nKQH9LR1s$QgnJ1f*|2B63&M6EmC|?^CYfi*hpbZW6{f!ia4+7cERv zk?CSHRx4BY<2KB|3MVj*U{wtJVS+M(!3FyP{XN#vt$ekdj8HJXM`*7^5;N+wXcSO_ zJ|Dz{Y*nWDQw+Oxnh$EkTj7=|%Cu^HA8tWw$U}I*5^V&$dGbt0H$REFr1#D{G3llc4nG_!KIO%sTHPM zI!N5HicBm3{XG^MC=B0XC=Qz8J0u)fe~~aY;0YNPoiWq(vxV`iR=kC9Xr3szdKIzU z$M=W=3}TtK?YJ=N(K%%<_$EF~=!ERU}?EjoY zVre_s*+232vZaef)-CPC($0B=`~PrsL+L{+g`qb9#}wRflT+}Ee*qp zxfR`1K4*b&+GZn@2HLPFxv7LiFjDwXaAt}y9>+%r8_w!!gNDKuy+yd+8^u6m6oZU9 zNG!1^B$n8kP~o|xCzflC6zTO?iV3+-91*2gqq${%dz5PyP$~19 zBg|o|F&PQ>EcZEr^G~bQ@VynCSSu11E0nv&W3F*L88L_vA88mGebj&?(=HL?MbCy+q$*w6JSXP%P-7O+FeLExsZs!k{fUg%n+J3F&66GPWN? zp6MWROpPM*ME&V|iPdr7T(VVp7%d@`7!HbZ>o_X6YU7Z( zxTJi7kuVrWR|w}>`~c*m^C7;-M?xtdRc5Mi{D4I$piNq?T!(ZjIIhnZ+SQwoN7{t> z!a$LnjVU>B+=)dkEHsE58jAcc@xk|yKqViPg3$wld;g+6-`VKPoRaL?Z%T(>o1EZ0bmXH%5I zY2*+{sTCrn_9fmCF@QKg#&Iz5JrEF2ejT3d&w;5uSG~#7ei$ z60XzphnPNASf6C12hpoM*S-pxZ*Gzb#c}cae$RjRpsDzeZKddiN=(c2cfD z{@@h!O%=}nTSLkb#3NMlVU4hy!4fa_Lygd~W?}dR={xbcKyETtv_kd+ts?U=BpSf_ zji2%^R?0xORx2_F!-yFZf`xbAC5kS_lpQPFqZHLsw3va2ny+H9aD^Pi`u`A|kN?9o ziwHo(>bH^8$}d=Y%YNUYoV`LGHj0(Z?02kcfn2Xc*}NH_J5-M<6)lv@s_>4nYJAjS zpW*V+F5!zyWIjAs6cukJX6Pbenso$IvPUp^hz=xcStguAD=_i6f~={nA}``JvD^+N z<`&M96Oz2_MZMWiukQAoU8dK@*f4Ln-z~ zjSEzpVBdy?0qhm@(?uU*ALVVrX9i{0Z}pjph%Cofoj$7(;hV+Ekpq+qmf-;(3!;S_ zn~IboWXRYtO!;bD96O*KUqlYJdA@M%TS-bAB7BUL8d%Zhi>5R9h|ZAvR^ym(G_+s1zHcDr4p=6#pF%YcX-N4o>td|`K!HsGIF+ExHX=%PVloPn z7Hky-cVOZf?0XtS-VHcoz`iF;82&g{g23ETKY!=1eBU8@4+b_(c zSg6L(TC(!Lriik!*!Km+KVK3##!zC}wgI8#7p6JYZCmjm^O;%E7C_)-1>|OcdE!XtW^5P%E-+tMLj~Q_9?J zBI^r(ydcbgK8MK%@a#gudzXen=MlNDhv5~4;njo-=T&Hmq2xBK;{)TtVPQCe6>s1u zUm;?~7ZKB6i#Z}NoSY$I#!tZg*p&99Rf$AuPheIgl3@{(hQjENw+dqaJ59M%N3jBZ zxJ$E1pF39AKb}r3YtnY*s*98b?gut2e_w$7@B+$veyi|Yo=?m;rc3CqnM}g3nslId zY$lBh>x1J(_R`bnhMh*23+F9(!WW9NLz9W+Z3z^f%RBMJJIOe9v9N56BUT<;FN}+- zNZ10&2;OtURIZyNoHOf)l`Jh{nE(4_j53IG61=|}$?04r^mmRUW>4GeGY=7Cz-!RQ z2hXK$kzc%u#QW$?gX3FtR$=`WKT&!ROK#YgNb!q6#6VP58liwkFDVgr@_>6~jVM}Y zM2a2ak!pvM4|Xg2_EQP_xItvESwiBCKD^so?JmC zEVA7v3=wJ4t~lkJb}ECU+cD=0sio`1h9~C`vxF=c&JU*$GoD1s1#DY(3O9OEtoUrL zSerAR6f2??GvPTG@WlmM_ue^Ww~^L~0mK1{`yI&yaRHG9ip04#QU(#(c;S5$tLJCp z-~zh^i;={3MA$G(uRw6A3GlM_f!kVx0r^9()J6=!3p@>0K+ckS!Pxq zwc_J~Wk{ug`+*6>HmWRa6E^(`!X)3DWbhA#$Iv+2S?E}u(?@Sa1&T|oCrY(a$Ic8kP&{Yfc8gs^R5 zodXd1mB23rrA?CS=V+V3Cd4%EfFk)q$S|AFf zM6bng3#=xGaR0fASnefUtpMC(u}*+xPZ6G^$;8YvmWtFz4ia-CbHYlz|KC`AJ(kK} zM-2!Y4j{P=#=dYxyE>GNP_q4!NFE$Vtgz*RupL=U%yVathzlqp1*>KQ;IC;S;fW>^ zk<%za)FEOz{<&E`NYgwARV^a%YdtY7@#{nQ0y;-T$=zlWvqz`|%KwR_7O>&7JtFCc zG2MNcvD#s^N z0y`Ee49Bpr1ia^$l6S;L-qBqYdrOAT8N@SGlpP_WU#KFM`1?YU|2gUxC_9N-mG$%r z=O@}}a(=?}!uu5VY_L_>k^z+`6O^6-s)VcvbRwW=ZjG{N3KfAi4{14e(;i`cY6>Z} zh@gv8Vy2T7k|JY8jy5BXa@gWZQ8fNCv5h~i5oJAV@S9>R-`Xou-Ce{oCk=_x3pvER zJ)4EGBLOoWSRFBTtFR|bAYqxFMi_Ts9Kdi90p|D$IUdOW zW4*Ej$w$xvTg8U61IT0#kh>a{5M*KG%rc)iAY7A|k#Y#}5S88;DbhOk5@?j$hJhqx zP3sYvPb|R?E+O~hn}ll;Mm|vZfl;JBznfT0Zn!Z21+NtBDQH{-64)v53~oc(*GgvO za$?$z3q;obTFTmwEJoI6tAu;gL=si#MnTr6=xVXgdWCz_7JMJ7_6yg4j}S|)9u$Qi z^y3%or_?QT#D=!b#2n~3vHU;!g<%jGF-RPBQKE(-bJSmC{IC*3Y>fH*vHJm1LS_p` zTL!VLN2iLkZ~KVZv2BkfcSnfq)IbuL&d&zVsuWT33FY=Ur4YbLh-_eRpVSbs5G z6lJ&J^x>r88s(-ziWTb-AqZnXVMDZ$9aE^vd_;J)*$3UUS7FU|$zI+bJBIE@JEs#eT|(edJ(0oyy5I|JlXTGxkZ2Rx;Y73=dHW zm?vUm5oG;)i!xY4S?q`X%9%Bk#eSGC+*qFD)==b}JS4I$NVS1^e64W3jd}pgpV~y` zz<3f1<0uny-E);Je8%AU(IKq!mXip>Y8r4I9~C*hZNv%;*p$kQsK&V{Fw9rhZJ`1d zk8}&fH0%)etYA{mhtJwhp8sO_45imbh}3x)m_X^ZZOX*Om|TDfxGfeTF2ZFu8kLbj zG~w_|2=@Q~5<=cHSa!kA;%oMEtnv%ig|aiFq9S||G2`KSrE?}3!F(-p1(5acDas%& zRKdPS)y)R5&6|C{Lbz*FiRGNsB2h$A_J-}kJRUn&z_qhmWPXqQKl=xoTgY`aE7lIo zfOe2)5FJpk-giX7?4}i5$Fap0a(b7EC_Q?f@R-D(#0(n0(jxbRr!9bscj%Ddkwdt;_)?N!$-}u;Ule?oaN~MLD3_P;+YS-h$a6Udx5}t z)FG08!xRk^emEq|w<0kGN%MD#tnqeY#h6-QdEPovaBn=Z!eMmj;h9s@L@s7Qay2fh zkUR#@Bk{u68%xYNyj?gPbBJYqw?yPVSwt+WzgFZ%_7lrO%7*2xLj4a}r%=POZ}D?r zd;N%T|AC_)ibpVc$%XNu?Mf~NBe3?BHf7swU0?uV<7DH&5}w zJm1X_yiFuVuOMYVB19b*$z!GxOPzgO5_TFnVD^28avI-b1Jji62#>?U!$sKb2=?-2N<|7LuA#hFWc9g-l`fp7JcwG5 zEyMyv_8@9U4TZH1^EvG0R#9S@hZ$-tBKtQ63Q&AzvMBiwnGMiB^%HqjMcB5-t_Wjq zH;x-DNO^y!f~-n8Yo4#XKOOf^CtE#Mzk~aa%cOBpJc7%tfN=?`QV;uyJ}KuA8J6HfVoZw?JDU<&%rc>m*rj0=+Ad1}a;DJLEh-B?Tpl?S_oXHGXU-KV(J2IRfeB+?HDlQ`H!>FijfsQj{znCG5; zp?_V&Qp?v}?IKGp{*(?{`iV1mg=g^U&I`}I z*wqdj%fpni2HFVmpLAlX#xAm(axf{GLwWJbMa7-Clm=`VKz0N2A_qlzemJp`7C&M7 z+g?m+!)#<*AlJAR<3A%ZQ{1Mryf(46c?>D3h-_G_JC{I87b5(+N*L}7B?Wsu?t{6= zazJ9*W+i`!nu~&(VLC?{)Kn1=?Wqq|876N-%8%rXV#^}LSFb;~mX*fus{B@%!sU%Vyh#HEz1Il(AQgAl3`B+v1g)P`_4N3Q- zjfW!C?V=3%A5o78<%@idAVS3@rLu^M!1xOWD(uGz%CD)|$O@-c;Q9|-jGL}pH5yZnD!zIcEq|qSv=~`tq#*FMKj2FSvJ5JvV+EcfX^f#kEPBlppCZH}(hb&$q+~2c0?qOW z76O5mH(S_m+(*g^#1)kM^HO13+d$0Sj78*N>qlZ5ivEQQPC$hX*9C*IVM{J(7q<(0J0_*r=et1Lh4o(}!q#Ob=9z`LeaN1SR0$N% zh!qt-9wDZic}`^1bQ6oa+2Mo5C^y4YEW?F_HG7q)nUo+J5V2yiCddapWvvFqi#tW) zapdGh2O=CB5wZJ`ZWBny?Z?K%)C7@a#YG6g^3D#S4aE|(e-NxRBRvOYuPzq01F^(B zH{+CrZ0s4-xF`H@-Vf&_!nCC83XplXrN)+FYcN!{wj1)R; z#%{dg-8hiuh`36sc|G^@0uzwMtwAbPEsl(fi zjtkhjMuleBB7B-a4!Xn`sQS`4~RI|OPVzIag zqN8g>#?^7eqVL`%bp2_>lGc}t^v8bVu=Vy6%f+4m z=IJ~nirxt%RR8|~AH2%Aoe=(};X6Nq^f%e6osQ*L;O@O%?Ntf+5-sMvOySWLtsk@3KMVr%0tvnjd}!4NCf)l4A; zGn_T>lD~+<^C|g=a0;{NkQmg4`5!KBTA&2syoH!Y@mCGlBS(ZjC;+cC0IzbHNdLN? zm?hm`Xbs4egB|-wn5}H9aDU%L%=WWWyuqbQdU*?1BC)ed5@pDYkb)@f+Er%}50%|1#8%R7ET`w=-=us5TJ0=CZ% z3eU|6XtNX0W`~R1e^wLobcGB3GuSr-#R02D#fk02Vn4YcGD;?*DW6Dde|7j^+0U;R zNLzb8A8mU+CCtWYCr|~?hPz{h!J;Rn8xb~~5s4W4DSHv&?RF8{+Da_?Z#^O@=>oCz z!^n<+<-uB^WuQx*QLm95mrZ20r}6oLyU8VNy(>@=tw1G&2`TV&;`0REx0gjx<0fJi z8|R7W+0De#|2Hc1M{x;H){Xw4=tS(KbrW#`GI0h`LovxB;#SQk1vS$uc(PR_c>76g zT7!xRya^)uZ>V-5YJ;CJyqQ8QcmHIOl;jT@bj8M;rPUmoJH=lm$4Y7my{YPiU3#1o-^tPgefEmF$q}S}klF!-%=R zxFl=?sL7zH9ls1zlws=zM1QtiWZYU$Y;91ra?^NPD?Es(j-PB%kQrYm8WFWdimR?w zUPL|3s%MFWu67bf=TidfLKh68PvHV&tS?mP|8$&K(ldHt(WAKq?YRJ9NB&p*1G6Ad z@jqnCpeP0lRx}j0%sSydw4Ru4FjN$M6^XYT9mP%4MRZ>+{=-_zxC0j{fVH7!pB_ZG zOE1=$@XAA&19eKaTh5M(jof;}l7mSlI@a z#x$Y*h<+m2-^ZMen1wit%4#cx?K6xO!4r%m6=YwvR}|mStq}^;RCt9D+qzU_6q|{y zJs0GI&k*}N*Zw*|B+NQb;&1VkAn+pohKeZ_>%iHDcqJ8^S|JhBdE)J*sH9+LyogQF zPE%|OJQFMQdKa;zjCf(G!z%=>w@%pK!V(&`qgIstJeQd5!$#q`9(@SN9)tNrD83qF zN2uu7CSspCg8%0TWn``rYqjnSS}TSS;aHkTxDM;ML^UG#hX})yc2baDf0B(AiO(Xf zF6t3s(;i{^z)7YLup{!5b2vp)DBfj(GZdeU9&vIT@;`&Ku^I(QrybZt21Pl$g=6wg z64!-bi6-2TuUtDw4mN3-G7+m9z#N20YOwx?ZNo7ShB#M7RO{1F$YI z3-{X1B;ux%8_K6F62m0G7J4b|fE;6MW3g_1oM9yxc z${;roD^wt-Yp%%sdpxo1MOdaU<|59;A1lHtI52)4BAmJL#LPGQi*(Ejv(knGBK=Lw z6F}*kD@2YCmu}|5^Uh@-C!&)QFRc`rW5y6G9Y$gb^8L<<^x`?hGRx~k>5C)8Tz6sG z4bltpMW*Wd zBx+}o3(S6X!WxA6eQr56@h7|>>n7}|h023Gi?$47!C!Fs9kBy(2ae=f!gV_?#RHa3<0A12 zs#D0n#w@H^=SZZV$EDUWhxGYWvHtg|SYS4l3Un8g*cvK;{QYx8%qq;VuJT9!KN8cd zq6!h7+~N~}2v0N$dkhwzFx~%$ah+}|83uZU)$cNifoQTq);D;y;KIBhbKlV>k{`mw z$V51z7ET5DJd}DwY?Etl6EUl?uR~xT$7*=WsjR}7P~i3|T-D%*NMYBb0|WYCB%&eu z*g~Zny#71Wq zvHVY`is+Sr#B^tt38y=VSiyVvOu<~6CJJ8m!`}~snzTOsN*54Cr((csl+l9vA}@&*Nfsa*lY%6 zhqnmBMO=mnbd#{(hh1B*ObjBO@E~HAeej4dj%~rtnHF6CZ6twW*jcP(1M5bd@8D>` zT0ntjwq+URf3jC(zIq5B5xk7*mqp`qWN+fUhb)W@#L+F3#jdi7%-4oVtlv$U;3%~S z&9OcWSGh`~%(rWlHyiOpjd*oM!hIDIQ{W0fYX|OmdxZTLGcm*Hev$hEw&1cYn9c#u zIfroHGl)w$4dNPMXqLh4w?Jh73yTr|)q?uJ&`%WE))0%ibDt85Yk`QRWX99&*XCY=^enu3&Q$pf}PAX(|^OVv}RLGv4Dbl~5jx36XPm-p!DF? zvJ;UaF(8eUGl+1*6%q611zdOz-ok&*b}0HeLAV$h{;1?eWIw@D7$me0(3Jzb4ebRK zKHDa&16a^7fcby-%w5Wzm^KGT;24o*y?~2^U7*y&bHcn6eM9zkgviR=g};=y3pHf5 zuwh8e+~?8r1>0}iMbYp|VioU1iS8b$seg&w^imV`y5 z%<{n%p`FJSOTfM#YrCQNJm!i(y9QS=f$XLck&EO6E5JL$Y@K6;=Z>w!vagL6#UT;I zDt>4dy2;r8je;_sFBfswA~DP+>U{z)lno!Y;2)`wWxCOY%K4@_ZF5wI2 zClWG|wPe;bB@?+ph#s7%{8&ZNY!GQw(2w0Ll8}64mbDjzws{XR`yx!igUx0Y?yu3A z1>28(4Edi2khKP9$*3so##;xD6s71emQz4QRi}u?G76S)m!DWW`w)q{aTbZ=h{tK2 zd8!YR(`HDTDdKkSC-L?oihEl_v2&?N_z{^8u>}zZYlZ383|t!ue-G;B<$%8f^#-m1 z^+qL`j629=nn|Y5aj7jFT(PS$j$}`V3w_iWVoB-qgk@_tG3_`iB(T5fA-l%Kn*pNa zmoDtnK$fd{sqjoXP0aQ`tlNa*aq~pQ7f9Db>}vF6AY)^=Sc{8TDBBUCbB0K`8tGi- z7w&_^mR~y=mM_NmABACglkynmZ6VP;pm6A1i%&>F5LgxO3d~x zQu$D{3u}d-B4b!YYmZ>b1Z0eD68h6PZ`t>l;}@9k{~l8=H#I52(`cQjL#(4X0}fuX z2N5tK#S&h|#DhR>`7+evfQI;W$N{Yzp!i1Qff|wjGdYLJRA?mKb&(>;j2e*H(2O!{ z=3<#!yRHlGL>FaXff0+FgtV#XM1;v}L_&m>lwm}8EJGN| z{Yk;nj&dlg6^RGuk+KsJzCc$_LlJ!mvtOXU8iPkjO5CEPdMF7BwYiFO5IKHmL=T3& zFhzM43)NUjpR&nCh3sX$g6@1FD@Qv6w!9kQ?nXt#h3zM_*PzE%866nDXEC6xA4GtCX4Dh;jszi^w|Y&=&0+rGu=r+iL>`h4A8>uhkQ!;DNGKt$0d|4HFSmyfEDL?J}uAZQ~kKxAB^&#>bPG|I?IryJ#A#89XBA16H)CvnNe? zV>eMv`{tSQIECfv_T8p&`~Web7HLG}Yc?@L^Tzci`NL^^;?u-8V}O~tl=p;LPyTP| zdTRa0nAyCQT*vA0fzM>zIbTdq$}rTOT;Z5AeWz>2IO_T_-Ida@jkqXW>WEtgyE+Y! z6r_#kIzw*B3P&69K1+=coL&1&@VC@%qGC;niMJ*Hhl(qFOW|+Jj!5ccmMMFDjF|ff zV5s}Mn#RFAei3`4ziIr*7KZp+BzCjkgnF?5Tc`(7@9z$p=B*4gkaEi!nKVM$lDBkFUgJ3_dF6zA2KS27An$LIRS8@O&Yhf;}<^SrfWozGU6U zTAd*g$@*ny#3kuQ-VaFq*A7#kxs(sy!d5ZX)Sq_(X2v6FIcnfMXR_lF%EQoKXrXNZWPD!$&t zn^sHQp$Y6@^9jUfTr=TYCy8pfZi|VoYbz>r??My*j1ql>zn@}4N7?NJxnaIa6=4>P zilNgNT2VPquu;(yod1-ww4dv@ z4U&V%i&>^Qzm2G*4qSjJ{dTlTdxt@%+Uaw>%TgR#}TLr9(< zYITlYwKFxZZ4|SCP3Fuo-AAe(PSSnk>DAyfCiw9w zG3V$}^V$g4E5!2Q?Mv7Vd4=6f?$E8GLcSfQsgsEEzkb-{6)xoCh_2m1>`?Xexq5i{ z1iAmCeW-3mtY2Fb&tRtuWc-a`6P!_pO=Z9R?3BPkbraaX9Zt`ICQ`AFxZyqtZ{Fg1 zcDsaC%T*INwn|j|`5~>yEj_{0mPpzaXq(2;%dIQ z7L1TMW~{l|s(~JVs&%x%6%%@6EZ>Q-;>_mFgp5}zOzKRAtE+BMmo^f)hct&c*Kv()^Nj0Qm(#hYYGKND~4w~TJBcd{I-(ym*l(`;~JsOBTdTS1LB%a&s~wc)TB&gv$Ki4+5fSO{H-b?gMk>cTUEBH!u1kq8N?Q| zq#9*?+MDQCTJ{Uynn#fCD5(=le9m9p;q1L}?q zuDfDVrh4(CLG&}WXH%zYP5e~?S!yFsR#eV9=E}-u|A#Cp8(-x~rZ##^^dA1O>UYGH zyq6@dP0W(s(^y>1)a!TOei}-)hr`zK@iL*gyU}Dl>yfPOqd`UFgfz)|bCt|`qEcohu~q-J9%zuPc~=NZv`E(Ujgl3iujjkD zo{}r|@(|a$`I4g6UV}qJ=F_a7!Uy8dyIgB0@&PO!ym6?j9ZRhdnm^418YhZric0`- zZyytgQ>Ke}5gSe;kRZX0xR+{rRm`{nf!KC-)}@ITbufYFCy{Uj7mSLR@$E(6LQmIG z{vpH{C5(^hmEpzYL-gZoCNTe)s8kQZOO;Dv8fl9tR77pr1ruGkoBh9OV*R<8P#UIA z7iF;=li6d9sH{&9ni=cPiFr9oW+3$qMmDH9mt!(sWtNMq<0s9G#5gfc+hvBCNIy}k zE?hDhFH!$bBY}g{O`}8B1LaK{&5UYx!$9g(pDX8#q+-TPCtPduWdpy8(ers^9qpvZWI z;zG=LiBAm4ACP=hhc276k;g=pT^BOZFOG`x&p+ULw!Qe#*m;-B>CCuH{a}Uh&mATz z_35Rp2GA2S;m`q9SwGCg|H3tcy!9;6L-gg#rsmc4q8jgHn2qpG-t~y{qf?o;UNg=$ ze)cN7X|0&o`%4(5;R;h0<%y_nIAo$dDEWbW0sj)4tXb(w^a{gm#bcw5Bxuha(#WE8-JXKU?pOMDTHe0HUZB9E-}b|rv;*dOP)R(6z_+PlJpk9$Ogj`uXF4-)Wxkou3*;lo?)p~nN;O2^; z77|7X?m2EUZ>1ztb?#^?7hM+f->y=rqFnXri|MX~m!wjC*Tux&c(18{P|;zZ ztL-tVK>0Up)q$FJYfV*jg(%6XoHhO5gFC;>2!tP1r4^@3N_d+BM9zgSQ=`Ye$*Vcf0ZbIVsC&PLg7j zA6aG^pC>4cyq71K@Q!X`qT?lu%x79mS;z6BeB^%3e|m`z(XacuK4YP=`u8PMUc|y? zl+It_dTy1J!YTJOh7l6uj@IU1!ye4VnWZc=>+oD?{>Yyg9ovLJZ|B?Z;*-S z#6$&ZeI`DXVL1X_x|qg3eMI>`;5qTZR`P%U%WD#W{D{e%wv?a!QVCS@hfua`pqX)C zow)ka_mzyd+L-b@qT?!OgX_W5QjW&*d=rZA6qUD*Lue6C;c1AnY)0AH4&%GKm~_CI z!^{LTUYp;Ft(RWIruHUd;~`P0!Dpbb^m-xMOs6x$*J8bs%6Jv6Zr`MT4{31g%G&;<~ z8xb4qIdfLHl|YZ z8IY=ZM7h*+y-abN22p9r6HH3&5^?pXN6mT@Tubq)dTEWx_|7MA#5qP38i{8|o1`CY z7uOJa^yUx|1UnvTHJyICWbCHy2TpN=Nlx7s~ z=NgAF=raRdQ;CABU!63;+dGNr)h;(j(2LF&IpnB=8#F~4PV zQZtHvlmyGDgfM;R`LUcKCk$ufR&lgR8%X6EQhcPzR4LywGl+f=3r_e8knt_CAvhoL z`bDB;k4d_7gSh(9qsPKlJ?MK#(+yse`x}xPXu6$)EL3-*X4*7$@9Vl_ur#RwXH3n% zcZfN~W`T;j9~HcLjLG;bUkRL|G?VzTM^x$&o{mV)KJ1!JZ_?@0B{-|S$v8>=mqr{a z(^cC4kX}W~7G}iijf87UJAU0xGXCo~!B@E+;G7~>h@{&uyQmXPQn#m=UqOSIR+2F=OfZ?i_As(vm3GK~gUkx~sb`7$?!6GrUprZBNtCl}%#d zc&YJ2>PKARm~pYK>ucVQNc^b5IJw(JrF<21oh5E)PSKy@-~m2S1h)<_&R4xeCEdlH zb{Fgal6q1BVW{iwIe>e*y$RmDjf;$MY|$~3`0-^fuFFz$IcOSg+aW6T$X1gwcYv7Y zZjxe%f;2DUA#>IQ|4fw?oKHL^G5?Ar<`e&~O`B{Qst1Wm%W7v*k_L)vKmC4cxlWjr z8T`e_E!}Cnzq>5T`JluES9fG>SVy8M)C8*EP@tgxu*MamKtVl6F@i%=x_^zSc%4!V z#5*(ZM?g|c+2KM_{tIDKe*B1((Nj3U@Qh?_retFq z26GB8PfFG;TY_`mb%A*^{c`Pn%EtLXU!n`K~h?|%#?-wqMSA@#=nq+19EQW z-$LWB#+Y(FF0&kE?NUtiY>B9p|C?emuJW2h>Xor3t)z>nz@}lXcGK@>o!DyEuY*#l z-X7@MGfgT{^}u0M`RyW6RsHxioT|ZXMWr0balL<9Qjk_cZ6|_Tc!Q}ocrv1PPJh!# zeU~c#Flb`!!=lQ@oG^2zbQRZPdN9c~PqQx=ibsx6jzrQZrB|s`t*Dv#t~9pNLUW&X zuE*1)88yF{*6JkvNvS(UbrhO=QwydT3#z6sCY!vYOjMCpwASQs0jjbN1K@tar@h#W*t%IWt$9GC3)#`o%cne>8I^u@@T(@8T?QG)~Jl z(GRo>nEDvTN6Z8=5xWpPg$L65Y7-l_`O~xGl!#HR8!2PbQ>lr z<3bf_iJf!NsCq9hK*iQZ?k?6 zB|o651%CDpFsy*}BlKEVlgUMFVr15k^-;_u59u%FKE@m+s7g^R1oo0jlZWh3{7Jg52Eh$ zR^udoct%vs56+qy7ccRiza&X#Pq)gZ$Ct-V`EH(&>TfL5MP^c~$TZ1Ba@Q%Y+xAMb zVHwYD6Qum_%!15v`sI?DyialdPyKNd*qp=+C`sZCwXS-4gr3}M67O9S6~od)PhuY%10u3;r>P-Urvk4Z zGVyv|$0*o5-BeZ_=K^KA)@QLvzH5cJhR~zu&{oU?dg9Klrnb)>Q4Nn=Fo|iMCE?JN zvNNHodWvFDk?VeyF^Vf@cb|I&jEtI-{o;Hyg ztY}8K|OlHz9EM@D*b>+vp13FAFaT{!ALVv|92j1Y}Fy55v@ zV!uyRtz2eue|$nzne*#ye8qT&D(D zG>IV>BANY6F2gd@e?OnleyRFBB@`(8?tqDHByojE#yV5+;Av5fznf=rAL%Zt$%D}9hmQ7 z*0Ln*lUW<+vpdPGIs9HW<=4A6$*jL^#VDC|Y?{paggxJn9g&o8T3yPP6r=^ns-S)v zg={F;IM($lv#SD{=YU5$orZ)V#4avr%&^{ zp?KZ^las;Y*c_%mEJZVFP2rT4Vt%!X{l9;;N_-!%I}xIvEHovr<%o**x?pnG9v0=} z-gjN3r@Zp`KvS`sa%;r<@XkQNYn86o*{%VBDu#F{|KVQKIBuM%swvKNn&}che9n}7 zc0^S4f&Iq+e=HJ2<8A9q)^FQOQsx2IET+*&J$=Mfzp_S@_la!dI1?G)O_cC};U+d> zjHtxVyO`Rx>?`lkH1u9&Dn3aPlflv`G;UsLO51D}GonFC5uLi+6cjVfLgY0bMrdXP zq>{3R8sE*VtV7yY=UnFsCCw15Ja88F7 zJD{TZ9acynj2a>ex*t`)T< zXtM64>iJHpo|CC`N$DV2zpcO(HY;Qyy80zUZ>05L1r4eX^e|rEL{ZL*OiHy0KN2yq zXKF@y=^G*JbS#yN4@0?*Y!zA`9lSPy+IbfoHC=`{qaEdAae4VJW zeSEwkt)`;qW2UTgx~S+SURWsmVZ=l)^L9m9=PM@qpMU3KU4ilCsE$WWaDf;Eh_xjVH4xWq!O(8Rkb5{_@H6N zKvQvvrFUv+p=rECfeT9S2)mwXkcsQ)TjZ3_N8SXAW8X{LEyx~Sw$OwZway0e+t z)K^@K>5=GTX1~L}ZiZz!?_lR3lhJ;Gn43CChHBr_%z13N%z2FX-<)whT#pUlHwH*S z_dc?E6FU8oPm(9LdXg(xP2^UC|2${@AZ2liiN3%<2Dv*|o4`l>2;jds%A{p) z6P2=WxTH8V{%<@ct(ZIzl6O&1WUkTUuS_D5Hhib4{)`kVyp4U0^X4#7;m3m}md)HB ziIOB!`v}uAG^8#!6_-O|mS14~4^88D5t0neHYpPd*4Nw{SRKFhEd5su1QAM zk*zk;<2JU>!JMblS{ciqX8bYRq`pq_0?r6R^JrY!-h{d`bVuo* zoD`ZAiLU0}MHZ6R4khl^d}_kiK(XgOCGE6&fjgEzaAA8 zo=CM6Vnq}sA;DS`Rr^bhXh1{WO3weKskpM!^%4t*5x=3oDeXN_X z^8b*E8N_xmUqHdSO(t@cy@JuaO-xFcHKKg8`BjUQs`oE1=W#(%QX7)KoFzS3- ztJCykweH{S8p^v{-OrkF%qi~OYB4>$D^1punUeM7ajx)Vu78wB3et)fnb39HM0sD1 zINFHw#WfS2xlL58VY^8@Pm&3>v#*+l2*E`JZb~y1yE==C|IZpzI_Q)bZ(AuvG~U}3 ztRE?=zB@alqWQ=eld|8*mz4dC@ftm5=C|qMIzo>tjPsB^bbPCw^!WKSli??OV)zdE zQO1ReIU5GHT1}5v)|!I)xTvhTEKr(9V!~O(3MZs~Lm>g0JB3Ygj)r2StD1 zZ|c9cC-onp3ev+-!bb& zbR3Uel#d%`0(*LhiZ@eKgr=37T&r1%fr78M82@AEM3p~vrB#@o6EtpU-zr3pM=8Nq zV@UIAQ}WJXQ_zPz9zrt}=mRCvJ@*K_<#5qWF6X=ah3N?KHCeBB3%N~#;@swIDD z2GI|a)UU-fy+?8b!Fw40(MW8~SW|ZVl&J7qqfO=ugy)g*e%#DCby`&Uyo712jfiq4 z9&n8(8LcMlF@d}LiTQb@1k|u}6DN#gMmn1$K5~J+@EWcOPy-lEOhp71Lm9EVc zrX%yNMw+A2w`;N4 zn|GS3%@;*APdRF8($|TqEAC`!Utvgv+-Js{lpErra(=*?P6Uekm^oi$iz+)_Vgi3o zh{|b0S`JmtbPCJSvaiC-B^stGJ1%#1=p&VA*~`|7sCj&s$#}Von6(2W19L92>k&fz zc9`=2nBj)#qC5|W& z4pn}zhiP0yHXAvehnT=`+Ov28A8s|}k1=yXsMi*g_4okE8n+%iBd#Az{Rh+HBw=ML zW_&-@_1|MMLtQ)Q`ktk7>N}EC>c1>NP**u*UR~p4OeB%0G;Kyo5@uZWo22WgBU7@` z%=j+G-xHJ6gH8oag;cL300r*@(~RTUDk}EVqbAX3nW&ntkD7)bFq}rw#TMfwgQjw? zKWRKemx&6IS5k$ei4UVbV~B~&sTEb@TsK8(5Sp~nRNj&h^W#lYiO_v%ro4tdB2f3; zWK;a{8c_{9*fR)CU+*%tTiT17+cj)j*6^;!+!3Q(Gkh`^EeBT`r}&1QqMDK}n<5`4 zprE>Fl<{xvE6TIGC&QB=|2wwTC$2SwG+%QsC&`NUB737iI1C8r`L^wR~R zDn|A&!Ou2{k)aY)ZK-fl?M9obQyff<;OD(uAMR$W23*f+D(X5o+O%Eex^4x(i5vJm z)rS98*Yp2Xd!E^<4H5-VLd@UiMfY6lf%_p0hsHl|l6_>QWRUg|$+ zsy8>!($)u|(7 z)MQ6Y{*MU1Al!9|qYYU}N}*8uIVae`x0xXqYA+5o-VfL`9u<@Jn#MnN5mh>LpNURl zjUVaav*-nuhD#t@xIwkkMmm=*Ss8*}#!R%S3j~?BMjj2ZC5zd7`cGWglkWinhnqmr^n+{0qqsb*~p0iJq1|D?XyI+#jPdH*r4ImL=GU;(IRgXyhc%I3B^o*D>$0T2kt#vWv z%U8eP=dVrvSdxaQUbDx=H$JfUs2KEpX)0s z98vj`&aO@;q!M-iCC`lFPpJQ)k%pZV9ir)*X{PwbrJ|ZrCYqwMqZ|69T}2t3KsJJe5L{ZIXbDH45+5ejOudYJk@ zCW-k|AE`&qD-5+zJ$PEHqx455Z<4qkKP7ppuBRy`!}4;-6DQdAo&-liMt!Jip`lj-ow0#}P`tV4{C#87@3m#+$tS zMWVdldR_mCh*w>%G_jk7t#!~LZX#>Dh-&t7WCM~0rkT?3CvZ&11oA%z$V!Q~%qYD%WbZejZ^bAn#6wFhQZZUG05298M5Bql2A$%`iS zGv|P$e#U7uUtTrUFLxB>eQdjNs+gl8HoTij3=vVaZP+Io4ZSv-+;(i+g-9-6Eh-08 zxH?aiN`&qoZ6d;?6~)I{SA+&O*)S(7+P91w+`P9|~W8rR!3DShyQaiUX+R-z*HqG{Yn<{NpD zrN;B;%c80hn_bWDlPdUsz21~Bs1@bg$^s+=ma+sJxsM+*`M2}XQQgLwyxE6DMPAvX zIRD!pGD%M{k%X_^29x&h$>QSi`){0@WM=o~m?c9lpf`Th&7{vJ#iFviyJoXTAhLg- z-->JE_gKc+5ttQS38%lzYT&B$Q2nZMU8!I86;=J}1k>D+-EQIi@Q;aM)HklPAHmrt9*M;R<4L^M>@QxBjb zo?fQVvx=YNDoK3Axz6g;HdA>oMM>(`jV3gdAveOS#1$JaVMN*_nc@?dL^%z+`-y7$ zwu_m2`w&qrYqy%YBRSJmB{QHz@h!xN&@_``G86^4KvDJLMdN>SITt8?aol*89TW3% zPw^o7`Y@B1&88*U)PIGZ=wtFe-XO}8vC|a2w@p;>o)sqY*f8Qh!=#S-ZxtDG&eYCN z5>@n}EAdY zx^b^5-pX4~y-E25>b$ikFrZdc$>$wR-gyq9N5w1#qiEccVoD#{AS(LIJ`+lvDk{3~ zpefltT~x4lZL5wfWa&+{I%O5+ky`-xW#)QaT%N|qaEWPSziXDgh z(D>+mlGl|r-RiblQ(V45RNfC5SfGC48dKe`ov7T`sh&e|IOM8nC&kG7A=7xXf_{Y* zPTy?2Ur`B%{L4#>lT=BJPF3;vHS_2Z?B=Q@c8ApSBTe-t4x2}8)C!Y$XsD>#4$Sw^ z&~Kk{B3fKX80RTw)u_)3nn>ONQMv8+Dn~pcI+&X44lxrxB$Yqi<+^Q&R3bEt=K~@) zY&6CH?kB2YPm*c+j)xKE_GmCI>rRWBJ1XQ#T_bZ*eCt3{wVKVU;eU&X?OP7dc>icq zm^V^X;^+X^>FJU{^)nGyDm$W~DZ^`us&Yg{?&o2I+UIy4pdy?2FdE;aLLQ}~NJbz! zon!>Uc}b=*+Lz4^Xku&GW(AE7H9v^<9c~&k2DAAPsC-eO_j;J{)w7%#a#n(Ug08zO zC8+vbG*zF@XP$@8M!8P%XjY#ecYU#lX&%00iH|l_Uk!1cV_ya|ja_9TTh@tcc6j?C zDahLqzAjA9kamsPkovw)tCjRCW%dKhT*G-)8)`v@FP8M+QCIb3NmoG+`@aWCuWVw9 zq+Tb@qBgOQFJ>(bqK(Y@?E*=fKf%?qOOn*Hds>a8$2>kp%^lV12tB1)7pI&2$=Ae8 z9U%GYR}?4x%AuLU89wT1DjwC8J|_6H1L9&n|1%6);QHw>37SLnIK>nl)o&~{u}7zi za-tM3A@T4+Q`>Q~sD}PjRKPo>R=f^P<aV-o)OW_t4wu8p{T?cr0mtTT5+_g>&{>ig?al;;wXa( zgaU_6g@+<@G``)#c$QxkRkU}vDcRu{RXrr`y1$!LBku{`q^Ms*r3?a-cA3b~4x*~3 zbtC>WjSo)iZStbaM3s-6=*nLp<;dF=GQltTksyC^8`s+HlCLJmOyT$qqGIPmCjZW@ zqN2}nM#(TmM^2bR=77rIA!aHXsry0WCxm5? z`$wYV$eXjnL_cmX;QfDof~nfiU;Q($zug$1vwMN`G#1Xu7hKvAS)D@x69U%mx-4BKpC8<9nNJ zmXOjn(W(=DC-!nqcfGnp>QJ-3t?Omd^2q)9o>pV&$4bW6m(8s6OhBFUobh>%mFp!# zT}9g^S$Vmi%>jB8jdK-GmSj~(RTR?tv^Bw;`J$>1jWOXdt3}0Tki>wqu8m2|S}m%U zN(tpOOgtpY8|ZFwf6yZ4x=j=qY!c7twl4oE@t~#+YlYx#%U+dumlVA_*~w^*^5-bN!oyf;t^>otaD$ z0%v==zG4lCI!{7EvDQmfe?SZv&dUo;EP0wJZ{>cI$l_W-?ckoKVNxGaxt+Vf=^~y- zySXZQiwEAeD^1PyC89!4F%m-M{b{Z{hDaqs4>7$~RctVW2sulzZ<)!3kGi$#o?z>M^(;VtLP*gj`6ud>9KdP&_a8Q?d)g;dM7FBn* ztFRy;DsimB1b)Amx{}3GIEF_yLi=k?_@%L;B9Alw*CsN&!qon5ps2bNnWlRB6fx z_y{7O^)t<@`in{qI)iBji*H`K5!Ber}$NwZrM^ z9ChEA^V5=6C+RVe_%f0=k8-^}O_Gu3{CqLxwhXgoF{)Kr<4wV0mQ$!seNFyv!eYFW zCEpyUKQ09??lZyQ4l&h)a8TXji0jUDhwyQqCA%QVc`DXQXkVjBN5OjPN#z9#A&Evj-T(|Xl|X+1&@ zQ)l$>TH=4zBaG9#pD52ScA4OPd`$_`Wi#Q;&wGYCAO$=}sPW(^nB^ms25`SOUU z=5?n`^6QMG;Cq_4BxWX-xSBi2OcSSPJ;6>+#8&UJ{$uvLYN5&KAmS>d$4&FioX5M0 ztCk+)R+y|ldnKz6d%6GUoaFzTnUwmPbe+1`-*vv7QjJpUv{sQ#7i z`rx#9P~C|l5=44-GR5aR^Ihr8cVmhvoX^7z(G9E>L|r=)&*~m(OjSRJg<$>Ao}_{r z!PTs8&3E0v2df{AbKQ7F>eSs^TtD0^b*i1;#hy`h>W;YUe*SLNiN8yIvOyQIplqy{;WABpGSL8GfPq z1Or%v$6YW^jGu|}#yGnRiQ@I9b`4*h=LR|fu6k}dbV*5 z8zhwoJwnhD<&g;{a@ST-#a|Cs%>VzzPzecAW@_$$6{cm=LQ!+6f;F?J%Ul!>7-pJ0 z14I?oGfG1E&qGaJRzg&D_=2hT=7@?E@a#b0F9>p}!i{h?@-kotBz1AL$z4tQ9HIXG zT-A*4QT3;z#=oPzn8zZl0N)-SM5rt2V+z=;R23Z{V}@{1 z9|=1&70a_s;}vT4P&%W7iI(SJ%@LgJzr0c=&>-<%>H|=xGvFSUr^V71SO-(PS-<0E_9P*^>tU*`JViKPf2@}v<-s)x6!qT0w(o; zL*NXN>dz}pEU!V7w}k_QQTrH^1~g=|&=iRPLu=%ABR2?7)gI%$naKv6cb1x(wh2*{ z5A<~Pq|_Rr(H%|XN7M+Q_#%^Bho<4s0+VRBQ`Fp_22IQB)aYUE{87OPoQ=5&)qST$<|$1siHg1U0NRUtjaD!*7@n!D{4m3uoI6`;Ok zyonStnnq|eix&`nxxcAebBG_qAt@Zos~Ms9J4?u+@$Fq{{5#u&ja+9z1+i-ugvbKsp(GSP_cqmaEuuWDmKy&A5#`C=Y9bScig{?FMBu4j;Tq=?4~qVoZ@jm(6>|ss{louv zvYn`6eXvKOffGCfD4{_0j0#r<0ckXRU14fEvIQ4P|3aNV zs%kqL-`^LA%3I8BtfsFr)emKh>m2<#$(uLMl#d1Q*lT9~IYnH1=&_DyH)elMk%2nhyVVN%6_PQK)vfBM z>=mR2vWFz*5H_AU1RvCk#0BC1yWUDyq&mWs9d!eTm_l!b zsKlpyhtQON))d7ELL+gBPY|Vlp{^K#pSeoD*eN9rO?;BqRR6lOsJtP&OhGvVM&xAA zHx(}tVnLiIq$-_x!bB^Db)h0*!YnFp8F2$u%;I(RXX=I2R(=njP1{{RCF|y)@%&@2 zi7qB$f!KQ#j3ScFyB~S~%eoLmuDY7vq+|~%oq06FmqkDtGhgk|DnXBpoz3j8DmWEU zv7S_&D>NBHsQ;t^dqAlB4w*Sc>%@4ul2y@2lhd<3tDSg$SMG5Ic`+eSMp+d?cMUf= zKRhBT&~K{i9{wBg;e7XyH=m8`)pO27nu(G%@iZ7%PHZbFtot?hwwDw&u%qi<*7&HO zaApY7p5pv21YbDnS~*REsP4#bPtF7%5^{O7dEy0<8e zOZc^~6h7A3#j2@7Bt9hvjJiQxOsM}d;(z^@v7T$73BS@qOk%o(5t_{N9-h?$P1Q@3 z%)$RIx2gIiL1+~0NHHFs_bM{sfT{P9F-62X-8GVE8ERL$>OOPYO5JB9hz8DgeX@}l z;6|xVYVXQyE7fSYNKgTFCF_lUAOA3_mbNuD{Wx|Ff#rKl6`O zk~338g`MJb3B$Lq!Ib>>6m2$YXNTT;WcOI&q&GM6DIoObE5KU z2yUTnPdk(Q5TQL(I)T$tsj9Y{^0_1p(OARzE#@jc&x47)hSm77t_iH&L+OU$CZ}7v zsOtZ=F_k~!SP%8k6cZY|M^vOg0}vE{8#7MBM+ZeEI<_@)@8@1e%U^bxxxc(BCa;ss zMezgOO!>VbQDrx+HqmntQDsxFnX07uqRM{dF@DcdQH?iHv;gOhEy|JbC+AG=yTir2 zLy!sO_g*uR%2A>Mt4^4*H`pl`scpx#V*ls1xPeo1kXF6cgl_CDs<{^#RD@^MnplEe zR^eQrWcz}1Ruan@@uIeX0RbAC*pdt0P1JfL_kZ}r;F;9Rgx)86f%?j$CQ=#}RrxSw zTlL89#K_m$&A83X^m@li}=+)x|_(ugm4gkwKqlUG?9s0Ov#?E zV!rPuC5S#b($sV$?~lMAvQ1$z`?n!+BJR3+R1&Dmo9G%6k~;N|R(pwg$e)%DmoTBiQSANPTZ6hiE?0&!pbKF^lj$7c=QMEfCXznqJdF z-y+##m%AS8F4<-o{W8gDnA&O=J?f8|IXiO1b(9{?+ZSXGvR16c5Xt((c1c>e+N6HN zp3i8$<(es;!$pJY=CP*e%0f}OH%&M7*%2|buds{u70PT$=^?x@%aqri5ask5Z<;7< zakQ!3Hr?blhDFWoIl#26zanbx=moBs>=Ue}4l*r=)5TnuB`qlaVZJMGffS=@7O6NC zRbMbQ+fzgpoZV{bznRSW&)-azk}Ic8l=;0X*f!53I!_i=*Q3Ad&Z$zTdhBrB&omo} zFIh?j|69wA=MS}FGRY;P=Bv~Oz`aaKj&-ahV`xR>o_kG{**Xz8_Ij{VqbgW>qfyhf0#q(+wok&iG;~8n_=Ju!JPldrTG62o4{JXsGO^*f`Mmf4_D4v z@gQ>JZdcA`i6DMyunFJEOb3-u4>CD}W1^fsJxrjP{%|N>zuA5P1E z9@=U*BdDTNStm)qLB(|xIjK&ET-P1t$2|WlIwhOXYF4r+97UZUoZ=-We$NQ1p_!W9 zG2c{vM_w3W-L{(2X*3;0-JfYNhG3^cSAQ~HQ2jmY3wV#LGqLxGjHBV)9%*p6c-yfb zkA|5CO+iT})y{-W3&)w97wGMb>dwPm*DaN5B>v9Y4uMzunxd@~n4#t|CZ?!;V~WXM zw@*~)E|QuJ!HK(eNzDr4e|pJ%G}-lpUvgE|ViOp_qZOq;BGih&jVkk)osyU0l~JmN=rX5X3@bA?HIN=@))ee1-CU zr2f@u&qZ2&hKQMYb{DIU%;OfR)mzo_6Zs$AD``~t#5#+m9X z1R>!45Bv6r?Ko)~&L5&&pGs!h@2QZN1OqfA^ZG`CKiO1w;mK)O{dQ?5C12426S>t( z9KA^8#ICN#7fB^@AK(T=bZsBgShP!2(*2i=@2U%;QV-FV!K`G&KL?w+T@H!4o^(A! zW8>=&O4@X$@oGi~*L0^BKhaAvpB~$46C-}N+oW@Uq=yrrI<7NQb3-E;y4@sQx4hM0 z#=(+uC}y%wGRH^grJkm6#Bfp0yeTF=nCf^WZd*e9k4xo+Eha{)z49a`n9?a5Mb)h$ z27qE(va8z3i%hV8e;zQn_Oc1zy_a4wd!_pF5#v2FkOvO!INzh(5)J3Z8*jT*o;RsH zYciStbE&?LhzCLiTaD+HHDZS3iASy3XUe0@auI!rcn%u#5+>=VlSLJO%Y+oEJ1OH= zA53huhjEY0y=qRYeT--`mHq!Vyciy(7|d*C#5lfM$gDc-s-7g7s)|}}q!(=lHT~X0 zk~Fb*tNo04yv3yaUn-^j?0kIbGoiIrq6!~j+XhaMNlVbFkobLZlejxgR8^Y}Cf2JL zwf()Q>+fWu*>S!`ajN9gOx*^$W}^81Bvbn&(Q^cU!N;MlBNHCsA=^y#52W_Mdz5{D z#NKB&&Ee8;fzB83UPDX<4JpG+fuEFGguJX);oq{vHHN7-oLkA?Mc{Y51JtVrj6cjq z1$^&KH`UjV7nK|BX*_>svWoJ=5axee%AcY`z54w{dLv-VTe(d32J= zW7pfe>lEh=Js0P zy1ApwHH#Q2rOlvx)+}R0`Wln@+-Wh(vZ>|Ab3T(Eqhkue==2&Imc6jj)zV**k=>0w z0p#*kS0zt!zQmKnf6Crq!%)3aXo~i&6jk3c*0p?!)Fb`{6)_0B$TAwv69-)FnI|AA zl5kbBjzG%UgvmNTR8&RZBd*(+Zy>aZnYF{EaPns3)QsVMJVxTI=~QXjpmz{n5I_?MKwRz&Xr0G3EnP*@e%T~*PxfgNp`5< znZxD~ihs;Ov8azGOxepsHBt20B~$h??|#&W*}Ou@4Kx>1pU~+HWyy3vLvSi1q;u*{-)}c zcA}zN=na6z$VHP>xrUEmjrh9uGqbL064R!w%rb0FwV`*!2q(rx(Og755H)EIld_TiJU8LZd5?5$)xwBJr?|!qkvy}NajRr~)z(z>Afrj$G`iJJM)V--388f@ zrf@vlvT(vI*HmfRHc@qNvMxhZD6@w5zdVo-+evZ~8osGA%{MF%)$|HIBG5cyi)+R? z8jF!!+JV3V8d3+Eg1|9RmG5L4KNVLh@!0@H{b$h?<4M~=Be5M)^;AbwAMMJ`*Hy}> z?NNbms0l^cQSJ*AZ8>0qPqyV|YAdz3vH^jzzU_>6-ZD{TZ>G9l;-*Egl1DVclPPYU z?9g;zkE`s~1vHDq?Hf$>7du4d4;o~m8!|*SmeKVRNvUg%uLFlyAoa_xtzwKg-NDSg z?UVD7>Yh-hZ=r) z+LS%8Q&jLtnusEITa_svmM1FmzfLB%rkAMnCYE!JN8yvClC7G zp^|l`A?<>w0{V!n+?&q2?pz|dXxOyMg{ zO7c%PzRtZxrCu7@YCR*q8)fF+(@$JW88NiKNh|e<>l7mbm&MUb=K9Q5Ot;qKwNoa2 z@i0k$mM7V>W9f`D(3Ra^l8|z0y$P+~DXQ@&Cr#mmr$sptf(wX0kZK|WShyf@??zMg zBT}_~)SLX@TbK%=;3DfjM01$;Bl65a6TBmj&NlezXcHdF9zP2qh{V;7SjQ7u~gqM*d$I6BS6U4)l_}mM^wbapBzw!5gzUJ~%;{-L)7#Tfh8F2>?KQ;&q09q)X)M#1rZOzW5l&uiYWMQUMbSGe zjPK+UQQqDCOhGPxIOGTWxClDsqrfxF)IWKY{;y9SrMV0x_-fo4*QoI{n882ER7C6x z`oqAtjr>nUDxWslIZ;u$p0>ubcCo13%xNale!nPh6FVm;D`EnI`suFPjSf}MJn1~I zE-_6n52Zm2X?7dgtwv+{aFdkHvmU;V+fC|O7N6?t>{h23Ps!XnSkAfBuKAR*;logau%to>EqL;`AHr=2zF%sr>T=A01_qui|K4)nwUB)v{}POU%Him=LhzodN2wk)zPZZj2kCy9%;4R;gN_{(KeIPHKaCoz)qzY`-R z{s_@bl;)o?b?>w4MRAASCi;_cqP*M#Dz=w&3^ZIhYnp$~tQSq|+nDBum;tM_?Z$iK zG*O|ldXxAv!hR7+3^lCp>ucIe+3I{#G5DCMviq*MhV7$aH11@3V9O-x_(tE zd1}%~*TjR8ryi%`O-=0Ln#9kkC+52*tmgkuZ_t6=T>~~th57|`zvdDn?kIHiC;n5> ze+j>Mt?NX8sZjmfn8IHl6BXi3sGQht6DPi_5+g5~s*XHr5$n&A9i=%;YEie1NiBkR z4RPJjjt(oV7k->R&pLkHPXN)O&cdMw--2{-# zMaGMgJDwy})Vxd$7;2Y2s%ti^{u+djSo;P9}T)YEiixi5DaKmocWXsx2K;+R~zD zyz$*Y>;SWV#1TKL-Go;A7>WPS9mV=zJvgBikIx7BCRAT?MG3j8>Zr-w+D2TZjQC5v zNpD#w=`B4Z{ZA`p=5S6vQuk0FqK0*M-5ZpdYUs9B4*C5d&KtgnneS-S*rQAe#YCoNmMAvtOgAkt4%@p1m{AWkm{eWZAEd(&nYfB z-QIPO%o;cY+MCF#W1<2}IPhA%(WJ=#*bz516W5BW-MrLfzmrO5lvD}b)8ZPsTS8_q z<6x=%ZiT6NaUZQ(_t9vm$&^oK_JjHr<4kG0WKm_mV(ke3rI^WWAaK>-Y?i=i((O?7 zhqK1h5*1Y*YHvKFNEkrDUJA|Nul5<=PG&oZf8Ex2ei{)~*QTBEvl*fCe|N>?yjVmB z6iPS_*Bj57-OT^EME}{=H2#q(G-eLpXngmR2Y^|>J>i-@U1pg>j6}GfB3NOlba@I3 zf+p>6i^Uuu%B}uJ6b)Hj$f7kIM$!d8CH|wA^fQws{i}n>qp66;H7`SEs=Q;ZiWrL| z^%l->K}9;xag}kVRX!u;Moj4M+e8(z^P!wSlTm^A3>K?Mq<2-0R1MX!^@0W!p_6gq%P&s0n z`w_V4$NaD9b&|%>JZ7nDHfsTR`|y86b#Lx$bu-yaNPN}N6nrw31|#fvl=m_IZ3{&; z%q5o;1rZ*@sNA;ScpfANK=~=tL)9NgN|nQ<_{}0y9_~ZK5f%(DA27~<2wxp`zbBt+ zMW=+xMdBwaVj4D*GeV0Nip*7n#B&w>FS{maT+z$SoOhOw@~rqCK450eOB2@~ac0fi zLlY5-3^4b_fvuJ>Vr4IrcJi#4FVbilf|FGy>-Ozp`V-+)w@)=0ZKq4d)kje(GksOA zlJ+vwEMbIyh;q2BclkQ-3kjL@IbteuD#Ue>5gwkBDz`_g^^EK3{W0DY28Yt`V<9bgw96ziCeZ(5f>hlVHL)k+qDmJ~MYX`$L!*hdrnsA5%&(5qhUGX7C)$|ckYi%H z6P!eN#6c77zMKv>%f)+|s25^?9b^)1xIfT*JNFTqHbhPH*gj&?$Ivx*ep&Lcz%?`FY z$A~#`my^!n!I-ybsq5LvGEZGwVJgZ7i)#fVf_xKHMIRS;e1$4sY(hU9E3UJQIKrzN zh1DC4vxz-F#CgCeCoyljsHzdeO>FuiQKf%8X6i1`^AE+p5mQ^xQ)J(EH1ABx^TZfc%bNb9wQQoH4f$ys?u za#lKLq~?!%UC)h?8r5*fzB*>miP(pdunwqz1$qIkXG~@d)Q&dhm zJ7&l`mFN0$y5y<%(s%T7@|f#HO!Cy{Ov%+3D_j>QNuK(uhwGc3l7}3&X_fca zgH7YDqiC}*O7eQTa#r&eh4%`pW)z(tWNO!k>4p%Nnlq=^Z{m_O`>1QqTFF6P9lt3R zpK2OPi2Wlvhwn2Q#wASj)B#bAe?DSnZrI1SVW0RWd(5mlR=}!$aI1BU>tyb`J6zj` zG5_B_4CMD?_K!Ku#w=z;yG~L|BEy3(I>){uqOE=)MF^h%mgHsaeTdP_3qZ5V?)pO<>HYqG~RzH{rCNbkpEl^jFF@94_^rv(<*| zZ5|W4gFGEIkbN6e_84RGf7zRMD>SHCKhos>hgdP<=i3`+N(OB?GU%Yu-xS?Ma{@H7 zj!>Tc`K|+eGZb%5M=zmk_nG`>+KOra!BZ%WRxONz+#dyTiDyO=42 zUe(-Qt=QCJL`IyUJm9A;~AN| zr$egqH53fHd)_& zDypod-t{71O$2&z3L5G|D@+}MDV23O!}t%464z!%G9F8pn36C@a3Q0AKgqbABU^4C zE*T5R|Ib)3UNW9KC^J9b-zt?cRZ>T@r-zECH@lwUHH*+^R57D4L0%7>?W}MS&pBlx z6UK{51bUmQhZl&7&EY0T;WaHLI*+aj4wuM6=Itnb(P!#@=q#$Z7l#w7naQTMq*PR} zCwq5l7&}@BKlro>M7PsoWxGUs^TdPq>#Zhsu!E>XyOE~qLz-KldEi-b^wRVufn_w0 zV@agu9x+Y-IVQ?GkZNaC-+r>yB*sZ}OQB%}LX{LHpz2RO&Ae?V>2z|E_AIOkVAQd4j7269c+9bjiMpNC<%P;WOJb%R@XVk^9U0MRd&V% zHj-wKvd@SQBk+8NDQS0DRAn(?c2%^|)Upmx@e2_Xx#_YP3R)uw&moT-wSVJAN7OmD zN}_0dW2>2YlF1}|Nl`QFPnX5C*RtiT%so7`6_s#@@$W%q_ATSY#oP22^xkK( zQlsL!$f!CSr_xIT8Zz!3BN;fy#_goPKyU%_&S1Bd!|cl8us# z)JJxjif5U^tHpy{&#vUhD`{fUp8Ov!h0O&JKxwyF(f`A2Z2qIpZ0=*?rBdS9t5GHFPjC z#~F{y+!Lc(F`GSs&xf1YcMKHQQbr8mD~PP@NUL*Lcr5Ls4>rC)|w(8Z*Y}X?^hQu`l zYS{5W^w#0Vd*L{39FDX9|IZ;NaSdB0sM_7lG!IJ9&mln}I&~aqek{qA?UQCS9rYOR z;PDg~li_%0zH8tf+A{2sqVFT7_Ax>^NPI(jCqgv?jQ@S1hTIW)J8%c9tj(t2Z=8S# z|Kn|pC(L#{!pB8SM3U6N}j$Z0lA9uZcM(Ppo(aV(Wep*z0<9gHZB8LyF zRY%Rdb0eq;A0dI3RM)2I5cJuF=8EI z8bgR?9dFH>+8F0pCsFZAk4Y?SOa3>Ps zX|<|&@J?4Tg=VO2Tw#L0WFJ`F%04i{0}`=+^JGNg+SR6N z-x^WP_Z69@zvNM(ohQvtw7BxtNi&*08*99yMpLRyL!-M7wHm=Vf|d=7OszAK1tAib z$!bHWo=E}by~pQ;25%oz(8wVJsC;ja30Jaagum{f@$EY$D)){J#<_>wZba5EGi5_N ziz+_J-;CPUVjTaZeiVsgS4UI(IL~r~uHsRN>b;j-d;C(3;(Lafs+YTn@||umMIWY$ zD*I@qsc+gzABmlmX-{;$Oz;`=&W|;L)olgD|K2A4hq9APO{DiJF~uyUQPX?4Y5ea} zQ7KpNFun!k10k(FEtky#MqJawWIo(aTuT`-w!fJjJtBs1-Rv5NOElYLZ9608-E2y- zv8~i({ArwIEN5oCe3~TX&37?HOHz5AUAY}3$&kjIyO6Wv7MRfMlv<(i@f{|==N?f` zWsxa$GRRgy-R9#a+UAHT@Bal&Y!^`qG*I`ens3}_n*KaSRP)Gvu4Fc_;Jx;+nYXnI z71Uj%Ax%s{8MOpRd_KnbxAqc6T@hId@I3FzokAo-^&ol$r*B&mcx{ZBg^Va0z;X-4 z$0;mSZ%j4iZP zeKR7ev0{Wtnn&3Ue4V)Yka~W*>jDoKvyE{Z$8oi|?&>LX%?id9lICmEief~c!-WTg z%KY;Q*V;76RDUis>CYUI^k?QsI?<1$0`kCA;aFFGA4yULLtXj&Z%8@a&V)8h5!Kl7 zj47O$Au69)wQ`)wE8GZI$Z*Xwkvk5FN({STs@hEv73)J9HVVG=o1FHeM0uKqnVR%= zWWToKj6g!PD9u=F>fSCDReUucl^QwP)J{tlWi-o2??=j84Od~56$@7i3Q&d!_gxyh8ccTgtiO+YNhO{6zCiUM1 zLE`lY{(6q_Z(YWniLob)=Xn+u>i(dKcR4Johp*|Fg!u*{bUZM_H(2xlSFmY|E9>4Z*Lyq_;r*yL`+s_AUfhbm>gM(w zy+=Dnb$DVcS~MQUzw=DlSL6&M_?HW&{MHsxIZsYARc9B8s{Ws=;GaZOkk@{=iJeS{ zYFM97{TG+KYbZEC?K$#05iV$B@)ma!LZ5U7K zU(FB~$;+=|Ehi}<{r4m`EZmD^$?kF4)OGAF=9U#wcZ;(^{1w|>2N_XzJ1-;TF68Dx z_KiuVY!xve^~Pq`D<`NI;+}b_gX?zY5t!$vEkB$|Q(TYj6h}S2&*TzMRI%klneORj z2>}T8M+(B!(&eULCrKx2$7xPS+wf6A*iTnd=YyuGJC>j?~hQCcEo& zQNHsmT-3J*P3`fqVm@aJ7De4QnA`=tUy${KkpKS!W%6eSm~cEp%(}3I)mGB!)UP>a z1G(R?HsSxWg@T;-XwQTA-!GcncZdzCciWh(Q@qBJ-D!;}?Z821sx2ja2pn{nd>kAt zRplp5>9sVJGzSSZf2T^U2%JGwxBh~LyT&&(Z<@$gL zr}~g)(}*;cy53wa5rp%(FW}tE<`T;0k23W>x|*S+Pt4Vx!ZVa!Gr_PDkw1ohH$NtX4GNebh8v$#~u*VMX0}f&QO& zUJ%bdV*l#DmrTRYIbsueYdNJ(6_AvQnrn`l#*g}oO7^ceK7Sigv;Ka{budF_nbVBa zigsDzy1uJq8rB2X6P}yO{@?7W_>IRkHOP-?mAYV+>vuGtR0{^1jCr(Z%3F`olKjB{ z*Uq>ks}FX&-j7ML+S%Ep77h>m^2h}05u8{WGA8iMZc-szJpNO4)MpMCQwl?D)JhECFBm^ zS+9oD(-Y2+K_-&;RFr2T+12oWK&($aK}sgdhAcG2pF8}ue2%S5jZt2`)f9YHFDmdB z6GfDL&Xfy*RsBuz5~k4z{ZdTi=5}I=cwiy$1K%9@K4DpoqFt*@m?p%k_FxYaaoQy$ zf`-kDTD4`w4knE1?E%Jfl0OZC+xnUE+xCm9^sxzLXvyrGCV5MkaAMx`c_#7RQc>Xo z_6SjXZokPLLE1K)+}|t{Gi|TrB7Tt;8YtK2*}SNbvnSQm+(;$_8vi*!Ig-39)%fC+QDD{uvRut>Mtn2HWZpeo zTx%FHWSE&r>ZBaB#e=xxRY8WSt&4~X_MvBp z8o9=V$MG9PpmwowdM^Iy|Q6fQLdjd?`M=!){*SmPn8rV`(6b^SnkCj1{n;Ba|@jU;%o z*?dOXJ-i}Od~&esov0L}JUYdA&L0-@1bYW4VFz5ryQZ3g1DEOXdRaW%_?95DzMILt zqZ^?)3}wy;X9(eUy+j(*Ou-orB1K?x*tKdm51ZXQc+Q#tL1|YqV=@n%7FRL<0rjk_ z?l}@#5xt{}@qI~%7omrGn;dq*RihBz(M#pJxQWJwh^ji>(d6zR2BhB4HvS{WMdd!g z<5o=@XZlI&Jj7_acT_ArsyHc`%_V@+g5M^V8PkMR-%R1J@eHJ;-R zQL5voBs+VL>+A87t^OW0xk*Pw#b2k@7HYbaq=?3Ut~JRYGgpK!zRt}0hSN{fMXFp3 zn-&*8HfO7nK`tK~h{#&E$n{ze$x`dOxz4SXEcpIM1WcVf z=DN5=e2TS%Dv?xI@AguH@>%r%N7=W%T;HsgGB{#nI*w@rpfj7Uh%1KR=F;Bf1%G?@#j^$7ME{5tQks?1wb| z00gvmuq&pvAA`eX=NZ?ouv8;*j@c~odn|MH-XZyDcy&lC{pTI@gJv40&a;7uh8sJY z#>s~{wCb?rbDy|4xU~Casq9HvCYrYOXti3JoNZiov@^AzWr#UBKx*N?f49kK&XJ0I4xmTbVk%uxALwdI7EBdYQ=2e3o03I2jX%m3 zHLr;N&d4iRV!;9@DfwA*y*yKiBL@R8f$0(5s!v zna)yOO(SrL{DEB+=f9ohfuT-cF#aidqC$^cF~$EnA*%8kc0Le2IL9>pVXUZ`{W<9h zzIzXw^v@dNV$8p33s4^7KQJ0GR~!~qTTe>ju`iR<lk>(9QHgh1q$2nC zM@&usY*CG095E^Pun!2|A1h4StwY5{3!hujcZ8zZxOv>P1{J0k%3x84+ZjBh{5<6pvH_^Pb$sw`yKzmbv z=W4q4wQ^~HqB5~bB6KWvhjfSGQDQGU` zBPo^2|L_b@tH}>ghx$vU!zKK|7T5Ic5>{VzGIe9tiHd*Q$JEIsQT{osXi$83p-Ft7 z!AFxJIUAOkaPC1-`SUrL0=d6WHZ|WY6>~fN0nzxyRKEXQQtsxihHnY6S)|>v*41Z# zq?rwj8zeLNtScp7GRl3l#%y`@Sjsn$-?7Q#UGboc7_SupCPL8 zd-B9E!`IcMEI%izX6s55UP{iNT1HoV_1rqwpLR=FInQsDuv)&&)xv`WDRnfIL+T4% z&5ZX?i`hw^SA>=fF@=NAi7GiT+LWac5mWChGc`8g*X!LJI)Sonyf#s@kCz8hwnt3(_!Uw0J4nSv&HMjfd;Xb<`W@X($-TsZ z5Ii!*6bY+g6ffPXIRE*6J~Pzs7-GWD5`<8THk-2Rn?%(R6I5mI^ZrN4uxX}v*#uE# zZxfD3`4gnqp#C5y93cG1HKwfVMo}rtY14;#LNxX7J246WfzJf>AF|Rxc-09L=yF_C z$^L{XOJ(|mK-UhYWY}4L17{_?;(#f;VWOz|T?0&b(H}D(749a&@XmLMNc;_VI zKU~6}?=|%w5=2IL^-0svcY>&tmTe|uLmSE1P$e0!CnRHiJ!3~n|Lq8n&AiMb8PBof zF)U9qSTCke*(&Kz(uivK5J{TL=A_ElY*N0ME~?_@r^V4rXgx_|D4fv2I1Yg*#7FRm zMCqJTQ}@_&z*z|*d=DQLYB#cfgvLiHWQF&?XH4t^%JR{0kr@)2^GW4G z(<_@e|NRyE^FA=%l|dA|) zlj9|fx>4*aBmNcp1nP2{@uxU!GNzoM6V+Oi^D3<~5q*Qi5;O+MazWDEmB!bxyQoy6 z}WLQ>A{G8Kb4bOxc#ymV0bWG~~?@)08b5Q`U-dWZ|6?%kCpc*8|H zAzUQ>H@Gha;e921-vU$nR$oz#kEI&#N#<~fecaA8e9u%0%>~Tw(6p}9G>`5~k9f=) zVZ2?BiVBs|zyJ;D6HP(LLoaxbR35HUj#RGP?K(iL58)kYuBoRatiE8zg1QHLn)v^& zh~bSFhd-5%5TQp1)gy6=!ZPHnTjpAEOmYyI*TprGTv7zD=>(^fl#?c9#*nFs`cHP5 z@(E`}l|0hLySTkzKL$-!&g{I>6pqTF$NCiThC@MtZ zuak@uW1|7_(XP^*A++BZLeoMfEC_Z@xCU)x?a0gSzHX-W&DE^`-y}D8Jg-uCPq34L z7+H&|;qo-ooX=TaXnOUsX?~CZvr1)G1m5ero1EWl6%`8bjX=Zf*_~{}REtF*cn$lc^#&WkK zL4JVBS=ZUMg5?(C>sOdSURN>B15+h{V7pRNKCvq|BgW998}*;?LP7b23{x_8A=_!Z zzpv?OJe@C!^8a{^sXg4D<^t`-bA~-2M7L}wop~mcE#3-I@NUMsqy3D9Lo6IcwhuXqc3(}Xbr6tEenfWIwWYuyGD@N*_ z$CM*^X**1X-!Ce3n7=|4R!%q08*H5;p4QKlF0K+)cXp!*{%n<)dk9n@Jdy+k)NZLT zjT30q1MivkCbpkG14vxmTkHRNOLHMFAT+(P$TUB~s#az2mV)>8@y4IMpTh(RyN_LB z0%HinAr$8AiH590rl5*y7gYY6C!BhT2b}slr=}zP{&d%GxaSx}P-O`>L1vyG;rnXM=~A@OuB(<`$jL*^QOZVS6-SFw9$jxj<`o2*fJ;v(I4 z6zH0#GJeMCsy!ky^XHU2c#fQWzP@=xI{h|r^A5?@owft>X`c+^XzM z@qh4oM(|(63z6Hj&3L|ABW7S!JOiWb|1zCc(bGpw>Ov}`6QyC^kt@7sJ}XFg1shluqB2Qj70b$zo~ua z5cR)Y8XqS?5Z?1lnGicP&?MTYa=%t;e@$Hii$Dp3%uX};< z&GCzxwQgvuRg8FTh?#q;Nz9jRWv-!z@0SUgeOF$qql_4I!DQv_5i@VBWU0JqCgag% zk}4Y0uHTYSfYcdJ64v#6ZkQZK+#Z2lYv(*#q_adudN~@iWs6S*fGAZB4JRr&8eXWuh zlO%Qa6jSjErFaNkN`sRog)c;n^Y5dg;$fa%D1G~aslQ=?s9^8at`P_M3=i`8eQIjA zQDlb3iQ|m-+YX{)|6ZdYSLE`o|g*{(uOl`t5$#>E04X;#>a1$l1V)33X!zoA^n-!l+}X zz|o6;Hs50eZl@v%byE+RqQC4CRoi#Hsp;5ORO832W{}M6S@}xYc*3lI9djK{l3C^` z<59`%PP&cy8FNCjgmHp zx6>3Ym6=HGlW!_=+R!Vgjf4*JRYhUhYU8Ypii#(VHl+(j(fenV)SYxVX7MDuT-}Lk zs3CbKtlv@8zMU|QkFn;1_jIX=?OQ7@oWT2p-QbWydx@|nO>Q&D5X-+~oAIq(AS(EGzKZboBODL!YniTfyyZ+UMk-itB_RQcE#pm9 z#U)X(=Z2YrJUT0@w3ure&4-Y9pT8|MEO+Q=xqPH#H!gEEkOzR8ZP~_u$6$VA7{KR- zg4v|ft2somkUyIfj@6u}O=V{yTL?FdG5%Z9M8!YuYx3HS73CpuRh2j!NT)^i%uJK} z%iW?1FO-^^1#~xr?^PbNsDH4VDSxj}RP;p>Nzv#jHA!u`cToJzSd;p0FL5<7VtZ$k z@!cX(PR8X9;%Z`SlC+1GxW;spH1!aBK*$XBY}Lewid81?6iKCM`YV$YwSS{&{9&J{ z#QPMRBIOab<52z<`NoLGDff(%|5G}F$RtXB=wZqp^@wu5pJXCG?k;N1`uVPF`Klqc z{;+X=a!ypJRh2Qe^K{R8mNqLX28D{L} zVPY~EGkBOV`9R8h9#izvNO2uufL{WcFEr2mHSTV4lA_ppbY+r-$D zv74k%oiFLm)E<1t3Ad?solMH#CyUDZ{Fn*7NEr^&%oF5M~p1eFU3387dF7s}Qn9^B9El~HyQIq$tsbaR%bXL7bYKB@w z8nxOn!9*wT7gcqBgeg4h5taC;)I^`2EUNHtoEeVTmq$$W$#vrBrRrNs?vcIzbgK+T zEZ^nY*;BIB3w~F{M9EfEN0|RjkZiSkrR$?%lC6TiR+ky^&(5wxg_4b6(In3QESe-` zy<#R?NQqW0y%ddrnCL(Pt)@!UHTQ5j#z)HERAn(nML1swz^n zRN2<|eNg2DKRS(7< z((tF@CK~6SQFY9Gkuq+NNo|-cDzA-0x4SlLrGN>B$~$_-%<0sN$st~EZ&Jpw9j_jl z?_zGBVt8IWJdhVsUz1wz;icq}qCYdKMeWZxRRvXV^fHBC@Uda`hBTAo)NGO*Cik|H$U zKgcxwC{L6#~@Wt zA~TWtvy~?F*F~ZVi-IPRLNF3lzvydXkMh!j^WsMO|GcxmvK<%)51rsM3ZmrtZJ&@uK*#Ev7b|&>8|u=bO6t2vIdpPB3}wkf@wn96uL7 zvr#?*RIOQT`~&Mn1^-UY2mJlmVuAN{CZlRSACc+I$VrxcV|`$x+$A?dKOw~wiDwvjA?k~glH=)WkLMB{U3&CGF!`Ku+f?SZ3aR!US{=NOSn zv}vwcS)8D* zKEoteQu%`Ha%#g6?smqc&KV;rIkMBtzI0Jka)cNGJnWjO>?h}&y57VTdkrM1%i>SsImYSKlm-zK0 z6+JxIWN@QqwBg@TM?gZ=x2lWtF)PUTSJ{H;D=@ zTxg=74He}yt{N_CW_^qCJw_Y=vjSsUtz|^%U^DksZY=XOBi3~@Y3Fu`IZvLSIycQ^ z-A$u$HKdp8?os@hNc(jgF^2u0rI%gLu_1)ifeBOo?kG`(kwGTmp`rm*_Z={?X+1<0 zwmWKax(pXJuOHoXQTi;|u&Ddr65}TUP1W%dQrS&ZR5v+X{!n53eb_=l1G|%|=3S0Z zMZp~U0U>`jYdn?S(RJS`$%ofRlX2wSI?3eUHb+#|s}bWL)JfzL@<@knv>;u*8a6#PGy?mxiBDu3YkCo8p*m6eqwNtz_dSCS-I zD@l?qWz5`}x%0!FUw3~0y7S|ixn}PCaA%YxNmjCwtYocZtz>5RmPtsJTZ>?q{u{(&w@O ziQLZ^fFNsotZCRiRaEf-c37b0gVoN5E2YIy|GVWwHXVGq-ZZadRT9(xblen9B&!(- zHJ#doXw^BB`ghg=Og^n*K@y11r}Pn0hG7_^v)6D(P^XN$Jr;Qhql8 zizKD{3Q2yP8SQOU(%dmc{0kz^b4SFFvYqUhSMM(|Sw|RY!T;<&PY?V@!%f_Iwo$5| zTAcH2p+wOT_5v7E@rFdDbi_G_eL$s{`B92#Ebk`D|8RTf*{S^fQzic&i6$%NusEc3 z$FOYI$veW~h%}Df?EHa&0{m-6n&gXyiSm`R1q-pqIvL-^okbOYw#F1yjuBIlCPkRO zIK}t|o~1K8%PeY;$vniSMHIcu?g!;<-zr6_a=$5`#cO#)%-ms@WMiI zgqF=m@3d=knD(#)zGRAqyrLl{@ZeTaq5UCK^d2<=klxzCcqxAhN%FQ`lF}n8S);l- zcN4RN|Cyc6_*U_&7tT26*v*cte6r>dN@p&I_@;iw_h();{BPu%afdvhd`Jcs*v z*ztFlAaas(Ol5)pLO1N&| z>rFEK>r0Jqw0^YIi}Nip&D}PMilk6y0M!rp#M47vUaYD8p0#;2uitK_f6endP&j?R zNg2LIQihYm^7wB`v~e9y=jzA?lCQ2FHr(|l#CsN9w%)PHMPBGJ$g z6CT$jDw4L|cw766s(yg|+-S(^Y;rF$(|7C=u z4s&uDmf;Q`m!$p#71WJ>r+)?CSICT%5p5WPry!Zi`AE5&Jn_58|4bQqf-j0CWhC|8 zPf)*Kom}O7!%sk z)Cx)c`m}k17T2#fGm_H8*-HyDV^qqWB%0hworr5Y7~e!DI0$_<)C9a;TO@$suqIPi z!}fT^xJ{)@UMX=;Zg%GElsNU&Bxep&YxUGF<4YkC9hE-?Ozul`$A~`FV#2_ z0q{O&zPoLG}RZd!zKt&Zdd+pDIZ2Vd`fN z6_xdQt;ySvC93#Vq9h1?yvvj=^iltJp--Ah_c~=M(uBIsJgWoE|0d*)xVckIVFeq? zkZ>rb%_3U-x4%j2MF}@`jjzoS+9Q&bz|xJGOA8-4C77}BnfG^J)ZI%dn=C0MdnBcl zhg_CSq@B#aNB#(Wsf6@UmpIT=Z6aM5)v>vzuIMb~T__(Bv)xJO(ntNwZKm!wy+k$d zPBC#$6C^=l1<963361q6rHn=F0c~zwCGl!dFXv{Wb829%Gl;61>gMAPW0H9I>iU|h zUz59x+&7Py=u4N13g_~~1w@|Uo(Jzow*R6!)mz1Zl%5tQG043#&ZPI5z;f*b$%qiX zQO~b8r5{#^YPyBBNE8gAH&sRZP5taMqDod0r$pV)B~Ze%E=-g*N}}YA zoum>u(@AzgFpl0-P2<8)u{^vG9l(dF?xhDybZ5y#HHG^~}{$Q+L#PG9opqq>Blk-Y6>j%5$bM{-~(X zsD94%XQ?krxbVHDruJ5b5Xd{f(?kwZ00Gg?t%^nP4_Lavto&{!r{$cenyuuBqAbwC zG)-+0Rh3VUy82_#gim%ARd-{YX+E}FRQ#<&OyR=5?Cc{$qtCcD>uGV_NU#W=Ha*hj zEG^D2RNP^yKwX2vIEimE>lV|=%+=Fu-CPsA{L zL*P%$xKMoJxbw|EDMo|PzoBj}c?qchPj}-LzC}1sZC++d*phZosDH)I}%6sEDNP^BL2&Vj_ zyE$bGcx4NutmcfVjEp6pa4c_UnrR$bC8{P6azgwPs)~FiWS(wvzB?hADEniRDH%Y& z0B;Yur|^&6Abw8|Rin-9|BjJ{c0|Zg{3{~sD4#}wG)#YuaVLC3cAC6mf@CQ8f;<$2 z0z~VPxuVt-u4T6t(kF#YUcot0fk&B*qiX#U;}w2zNL0$fp(d|xuBhoxF_l+yea3gw zVNsO_$VEqPRho&WcM}yJMv)6d9%1zk-rokB244qJxgFTkfb=WYnhcWWKoa!al_vX! zg@kbzO6fDLrtzC|q6(%AH1%2IMP+@;@-Ncam8*jN$f`kjHFHc5N1Grm(lPD=QlDAF%-XO94|ROY78RqZVzYsJP9Btoy9T)#!y8^-Ahsvavmk0 z2w7C*E-5aLB7;B}HuyIV(;{9*T1p zo63nKwIb_^6DIxtV#N$$jG}Hk<_tb3>FTz8XNaFa_e;%?EvEJ;BX2anGSWjg=ydGO#9JJ=N1gt$u?# z){Bw2jlD)@CoSIQZN-fCZ7zwYW<~cs%X*B!6d#rS{%*+g5-(Y**K3Gm+Wyaogg#R zC2_`oH%rN?n82F4Ip29|I6<(dhKsMuBPRL?X&VS%N69xtMx~kDjNzhkepzmEdoL4J zJB)Jy{t?Aa!Fll`;r_mD=Fwt8FOwQ(8mVUXXyYy73)Tj=9&_II@m6DNv6=C!LUE4L zqTK}({r5pm#)A@KLCh3Sk`OZfMrVfT?lmU%Y5l?6Bdm zl)QJ&*-5qsy#CyXRLSNMq5|)PO!75bMS1fMn2LLObPKYtaT5NIzQJsu#ZVT@keap7 z$>tLAIbV?WHJj$XCJ35#qP_Dq8Pf3c1PzmaO8hEjlJi6#@nd@L zZfzFRE*9Sv#HdlZlhkqKW{x${sq;jIuP26y$mj->emSXN$h~MXcnD6;@gb(PmUK@v zGBi@N`p+@>oq38P0-MLQ*+sicN_NM#p*GcSy3(7-DM!g>vUL&IeyK^mcDyKW@kCQ` zf10T5YbZP8aY&fhz73b%L_FBeq}FMlfJpl`Ewn9?_|6Vz`xq`eyz_{e(Sbg}?54%V zhm3zDL3CBDmmrwGnmHsv`8mWfFjUij;Zb1l{ee9LsM|luH2!XnsPvo0nDUoeM9sQ3 z-vr)XCQe^kyi24Wbt{&el8-4LX!g}ygo$pel1mW>K zD;SYLm5Elg7gfo4PL87pDfMJrPZX%-}GiLN` z(?p9jX5L7CZ;d3gER^i+q=>Jkq-?0wgPm8$^Zj^9J5I>}L*nCcd_@@n_=j`5 zR(Z#r8^?-Y&F*QYcV&SUzTX@&mG605rSiS4lAFHVME`hFRJadee?;zPPZ~;(WTx>^jr-dZG2afdxGXG`kCmCFvG2|)IPP>)Jz{HD*8UzmZ*JtyQzr}i^}|R zg9+vDC(m&|xs2URD0_pbva9&nRr}cl-GjWW-b_&@ps*!)lXIlI%;=IU>My=@Oys=yYhX3Xb ztS8@8z0M6xy*R~Lv4sDgBG3@hFJ7tpz|IlC5 z%nvS@-0xV%NBAtA5JGwVodO;OpbA-+R5@u*a3_hhJEiQJSf|f0DKq@653ZgAk3&!9 z`D$j=37?ZP%-Xxfgvp{&f%msK{xk`oI490jK0x&iG#x26!SF&BM7aB{C2ERUHw-p) z7kZ2G=Ea(d(W|AxO zsJ~Q z7$vIY-(#E(e*PSzgU+r&{ExVp6HndaGmTGIh#AI}qx?j~&@iW~shu>HIU_4F`{)la za~n_eLG2&C;T(7l*$-Twn7M~)?8rUM-4EfjBt;^WN3W%d`nFk5i(Gc>sGM`A?3$CD zY`8Aq^c5*ny;|GE(4v+)h03e#$rq&Uel*5}Pxa&h7Cl)Q8RPi5W>K7T!BjFwP)$du zKZW2-_7kCQ?OHRdKedKX_e)3PE!rij;yxal2S4c}rm$N4@ccK$F zujcJ=qKr`0@7Fn%BgL;$=Q@MBqRxz5|!LaJ{y^?&0Q-|@Q z{J$USu(IJ-x70dM^J>9nPvygahYd78`eas`jQCds@0gXEeAi#ge5hss< zs-l>MY2htYny;ctco)^p=bWcDF}ud7&Q1yMpc+`=%pJw&&%xJglBw|Z6cfiN#`L14 z_Rurbn=?IVdq~uG!h{D*5fvFf(s)!^PzlMC+YmoWM#?yo`aJOjLu}!Bb%BSVKYu|I z50bd1K2LEDlEj7?*Q{}R_mdgw8Zs#1t)L4%eIZlf|6`RCE ziQ?>~#pm8p4$SMXr97XRPmA7+(-FPzj0s;!_5>nBh8u6rTv7hPJ)QK$;zvUNOWRb_ z;>M09HDRncn`n_Z!6bT1*#cmyXz^myq#b0GYqrqhvz;bNJXeLUt}>C~ET_PGwyW{q z)?ZAUPJ>wACr1%FoO((cW`KMJ{8t6JAMG~8 zEQwXG_BZionP$VA#cBttZ;LYxV;OuPI+{5E!oS&VA~zowRohx?n!Wn*(u~;G&X~ep zqeRsWIAWSluyl^;ACiZn_L354nAh!PUU%0y6W=gYRK{RRz9YJ3j0u+zPef#XJ5$|0 zS5$QQPUD61wuy?&Aw&l6{BGw0dr%QS>C-lBWSzv|vzcH7D$Zp%KXsA{b&Pul{9T$% z_4h|bHNDl_)bF6?5TdUfHsQiy0h}Pz*`_ydDNjq`a|q3Fr8^h z@3@Su-^i?_a6KxYVw{hHS*-P=jP-og^!x-N6H1f^DHc) zc+ODg$+=RDvai^Ihw2S6Ch$RpIOm!FeQ;g^d-wtB>J~foov4(JhMp#46_IU3-`eDC z-Xc->|8KC9#ZV3LN$fdM%=MISZmX%-6%_OSZmBSAynBC&RG$fWdXVTUUMa#w47m}R zH^fw56e}vT^}O*99W5q%E1&gNnf6L&=j9bLO|9r_;x{Z6Rq;g!=YJGfQ%5$N=r!Ed zQS%MsznX7$aRWMQni3coBI&PUywo1tB74ZR5BSRw|4zu1pJgkz`hg^PM6czYLCv=; zSR>MDvngoK5LLg3a{|5%rEN~q!ec+U4=JZ8a<0DfwK+=5;N(u?K!y>~ofyt78EJ)8 zZO+gtqUeaew8VsSmy_|bob!c23%sAWoKf|9lZpPNwqxw!wh zqzoqge-OE7`_DNa_mMcWoE9H#aQ2bCrS`6FGnf{84m#e4SrVr{8szLB&R@uiSV4Oe z$lfasN$=Sr!K<0?q3~z+Dj~XXg9*=ABPtSMF%lk8QB|GDWrl`&r)oxDQJMc(XS~eU zr;3XE&wl6A$0bf32(~#y%Z;Ysh)Me8n5d?Ot)}`{+)7p2Fw-!bDsAvBSZJcJEfy6n zW_ccwXHrb=+dTz51p8Oik3;<5dl=tS{9~B5e3OaaFqmtZ+iME12-QrdRl~s1CXiJu zs%h?aleDIzsQ7osm}noLsG3uQP2_SC6yTdX6&{CYIFS%twbS?t3VEf4Qah16bND)T zcP2N94{`S|b{^m}H}h!ciEk>s9RkJlrYI^1I{EvgNM%=>K$xjLivF4?MV=nk>~dbo zmm&mabaOIEPC(JsY;-`=>&*F4KVX81HXafco=SiUks?-0;eEKxR8Kh}s-a}J$v@Cd zRMHueW)b%glNde3O=|Pt9Enp8b#o?l<*WLtx_1id!+#K5umnQKe0NKFMVC4vPvMsxn2-t`}AN zC!*bG_75=A3fUZog0I<;<8i3Fd9!K$hP)gUE~cg!;#=v((6nQ>srz@Ss9I{4s^&CO zyD@DW)mKpPEj3Hvd%e2NSz4^;Zi$p{jyWg&l46e2qnO&ws5`owv;wN_nh-7W2~uEM4o_Jyywy2jiGP8b z1*m+6Y+K|G=wr(7^ma)3ojWAs>QSa_W4@?a*HxI>MO{TTCoVD57*eT%uZ|htE4&J| zGONuATDBD&CX?E1qQw_uOyYnAVs7pziOL%g!w+I4EtOIaD$VbtGQPvK{H0Dof0>5L z`CUxz%>zVL{qLA5zpGeO#x+?c^!a8{P218;-S!2d@_)sqO3dn;X1uC}>qOQ5sk>=T zS}tlDqajuB^+@AeMLxKCbxa%XcCWTd%Ku{8uwwQ<9PMoqZ^;tp04)ZdGiiZsV$!*C z(pmpc3rscB^5%=f7(TDB#4qV)DxV=u8o2|OnyUYi(}(gAJn#S+y_oSL^tqV2clwIi zRwZ>P+q%dU-OlBR{EJSTf3Cz4(}E#q?ne^M}&gobBymVesT8FVpW_;`C=XC0*)|-^z?9KwMiT( zyhWbh4>@c8RFmfh=sJ>dVJX`KZaFGOkNB zp~Iy4=%Ma?-ZHh5w+v<5wwa>gBShtQ7+?yPEE83>xxblp{ccfJFCTX@Nxek*-J49o zf7e`>;Mou{rhpzw`Toki-K?a=T5Uifi z^JwQu;%&Q}A!8*`-9`o-(z1uOSxJkm&1PB=9g-^ahJwEya-PY!mf~dy{da_EqV}Y!+tI^$H&^OV_BLxfDEMTQ$#2gC)KTyPyRcBUiHQlS zyg%=iD$MG;-;|GR$3N6gY8P`kqS;Rb3)6~uR16AEG#TG&-XTN&_iDU0!lWFX!{vuB zJGJ56`f|P`4%+A3I$09cAfNHlNUL+GJDP#?O=em#CzmSW%75LQ9i zo74sd*la{$bOx93N8f1<#<@Z#H%IM3kEri%ztLk>~D%JbvP1!qB zL=_EZe>3tg8DURN*`_=#kikPDouby3H0^mTn$6;Y>`FG;^5tup~8yc?hB& znyDjiy3kUU;awiY&^!yc!+g{GcF^T&*-}uT8vpb(LWO%Z3ElCGxKGb63 zF2sl`e6q?UUOZ5o#k8#dBzEX8DsA+jHcM%7??97O!!M`8X-*BhD>38EbI#^mnW5gS zHSs-$i}KabDIr{c!Zc5$z6H_~7n_uoVW1`}Kq)yq2*z$UjrWu3pspuL6_JYw+oQOY zd7&yi?R>&qQI!;$#=fL^p!gfVshi90Zg{!>VaFS0{^P94x@^Cwl=UMeeKCcv5u1O+ z$zxT-Or#~eexkz6IMq#5<+=kVO5d)+9r)}Kxqh(8eXzZ#g1N2ElR^>1Cn-ko44Vj1 zohbY-EsyK6isb3rx^TI%>NB&ttE9!@8=gfJ@ zM_|Gs=Yb3fpz;k;b5+e~0ku$RZaXNnaea@8Ocy@kyw$ei5E z#15GC7qcG>i80%p zn}$guyu_Q<@x?kxOX=CBi597yOwympWHzm|SjwJa%=qsr=WuVCq5ey12I5C7aqeOZ zuex)KGlK1y@YNqM1r=)qJOp>T&TktT9C?okW$VZ!|@{CiB8L)c?%Q0>SBI zt|I&8$4yN(DYl5N;FTg=Fxo_(Iw`8|rsJmh>oh)VR=)4y?MLCC3QgjTL2($+-iVmT zO`3nBnB)O0<8w$$USX16B-W>v2AmfOw_(Pi$!#{#;&Wnsh`;-|GxCDO8v<4%Rg3X8 zjN_G$lakMmo6u(~+4{dy0#B2$ipoLE|2RlZ9*JbAzizB)=zT&|@h|D3gh%>a@p{bj{*8*O~vw_gZ z*0&i>OMrScX&3Mh-R1-*iC;a|pEL{(@!2U(79EDlK4?P8JirFk%_mLSqVA$X(+`-c zx6;IHJ|I=_zkc5NS3vyg>i(u;_c4Ake84&|GAA!|;yQVf8OIaUAKvK1j+0C^x}S-@ z)`i8RF508?nQ=$sqpFP!oH{G425@P%&~=)0dBMUJ{wEmPMUEljsiL zAdfC}&`zm5NMI1n-H2KuFTK`y>)8c`>OV{|4N0R!MYGu7h47v8P2@552_QFIZPL4L zq9PwBc6**Vg4|1}ZL50hG}-;PP^oW=lzPuClTtK(cfb@p!k%8#2ic>I{GSe+`um26 zD$m&NB-Kheikde&Eu*Cf1?-4cMG*$J@Fue!gz6pbP0@9f5mW6MZ^8@3PUWP+G)A{5 z@Dfc?gcT|juVb&a+B>w(8d|KKU^0pEtGZ2ey9hkM26O~dLZjxS;&X*JY`w{QmuWN# zo*r)klM_YNe#Ile(Y%U19GLzRXE6#N>TVJu2gR_~n_%|R?v>Qdhn%+_kyOJbrnmM< zQhV}6^pMnki}R~bB?&X`Wh0r{L5tDc?~&3gOH!^rEg6>+Ks0A)(RqpUn-!9wzBu3< zAsDTG)5oNrA+rV<{rMij$J%*%kl-ULo$B@yR9?iHFod@naSWBz{R2$hofA#L+=0wYm_k3y z*^Im@s#d7d7?as`pO`M4B@@w8+@6saN_5IrOCB=2tTO4ZZ{?BUSWihA#9hC{>AOne zly_Y~;#8kco$F5UJ^HW&58s1?+);UAkZJCbC@L?b#pKRiEGk;ft3i0u7!%3*RFt

X?tqQ`Xa0@XW)HG(8tXfJ1nv=9ArDpCjlfwFN%EM}IQsBl-dY9KO*95IyUZ8VMBYekiQ;WJ*#QBl=H&X|V#j)}^iKzs=$6`f3D z$eSmPp?OmM#12#Y&M;BUQ8BSw_wozwmBPLgO~Tde1y#Lr+nk|2BdL$}Z8MJ+Q<=;n zaY4H_#k6>qMNFiT17y6tgxb`H1e;M)veYRZD>bUDlS$qXl;jOZC3g4XHeG4EO8hTO zw@~@dl_ociK?tJbNYO+1x93gdwoal-3nQlSy-A|H(*MmDlRa^l zsM>eg--qUw`6l**QKAZOSYi^0@i^2IxE}q6nAErwaXzI*e1=JUVTgbt_%Ez*7O$5? zr2U8Kmtl_o9~?MkvR+vtD)~+7lD@f40vGi)1udII)lL~>!e>^9n)yN4M0XOtLHdgn z%tI(M-z1+nCCMkeQVxX2FYke#D0F>6vmtvm2fj#Y}LStZ5RU#+$*W6z1whdrXsD6 z@e*GqAfQ$dwN^ZNOQjtl9$@Cs;tOWT$XZEEU;V{z8vnpvZj|k7F!@JPM3qcqKOhc=*lhRS}@Q0euP?Br#pDRHu>>Q?##)O9>< zns<_xfw<6oQ&{2`m9YP~^9f&@W3=M(sD5a@$&T+Vs!p0r^FKF;io126DNLtU3=%f4b>12v35MOyZ>^Ek zp9Z%fg!dE9v)dU-cM~yDqZn(dyLksNqnyv51NJzq7|uXSaE+wo43d<`ShsteIoz&Z z&ihnBf^S4WQ+>Kn%oV$&8dU>(nBrd%<3ove#1vmf=oX>J$C{$?%z#jKFZq9E_fjQ! z<00dJ^-@uFU$7dEikgW|^-ifkQ*7AOuO`zC{?YRsmgW4)UudSKXNaLB(=@~{Vv>qr zUC=a-P7xLKYMFGPu{+f<(Uie17S!!cG=b{}iuwH-38;}2jzeYNS`!$vkYYr5n5s9Z zyq@}C$ob=9lYT=;R8GQFCzT@UsN*K2yjeTge2BbPDL#a%zmdg`tlNf}nm?})HS2Dk z83zB`PncqAiL2R9FLyrfE3*{?PBW7yZm55S9RioL)xJ(n%@CPgL;pX!dY<#lc$ux{ zt#WD)%WM_t;wpXVX@hi6&wOD!=1GQ~n~QyHMBI z$5|4PIyIj%Y?$59lZRk(nEvlh&MxZ4!Z%{Rsd}P=m~ItPh3Yd$Ow}91#QgTGRH44_ za8uoNlBlNX?Mzt#Puf8f1@2VlYMw=m5-w*|yp}vsJruX!WJ<~lMFmzdtwK&3n}sps z$QF}BK9>sSk1~N($N2A#$&CN`Oy0~X;vA$sD0Q=kII~zeRf|WOs^9T~P=BkBhhW^w zI&3}bd1&YpGt{3$}Is&9%|^PKpV~Zx$7)Aio#h zK}NQyo|b4DsfYCQ1u?^@-HAZd z)Q3sGMBSqmChwDCQCSD~n2ZTbp;360dV%WWC!GC#r4SjhT}@Nse(t9GB`15KDXZuv zs=E6=Q`2-_K>lyS98;d$mr9m>rN~dwd-eQEQ=YnBR8fEkms+yjlvS<}Rrd>tC7AjB zdNXV2CQ*6IDU7aO>h5e=AbINf(autSzSQHeV4|}xSMt;|SRz`WvmHY8Em# zN8ROfP4lh;qT-@VCQ%sLY!W_;6=xeQ4vsfzJ-drjON*=9o20mj;%uPBbm9Ygn6ZGQ z15-tdXBV54B5uWn)sj*~8fGDtFj!nJ>CSe16fEdu3J)^}Q2QdL{&RLbA?{y9It;rV z{>A7yXS8X)IxH$LlY)1dJOnwn>!qfygn~n;&GVV;nqzZZ%5l!2)FAJZ$$zJ0i9`Q08dbrES%)Pge443HL;*vq+VoU|ySpe>#r@|h;9 zvLEeZlW_H)r zqGm-hoVioD|8vM$9Ot}xR&r3YgZ;T`Ppp}>dA+F6(;b{2se*vA&$^g`Qj(I;^y~st z|0I0~iet&DFvI|2F)eJe-&-T*L-v1Ue@MlHk2 zHl&X!+PYH=$tXqY)@7z(Gt(>e+8mR4(`hmPmm!&`W~a59ImH{p0e?(!rtIQ-4CkJX zOn)yYsY)_2Gh>3OeSkD<%sj&yFLDl1G#}af_L^C1VntO~hnyGrM^PItc528AN3r)R zMePxJjeR?qxrKiip|=*B@*5_Js>xdIH20PoRj|jDj2|dwQWq&fX!|5nPTIZ-y+gfe zl;1+q8cGUdOlSc!VR)en%f&3{$`5d1kn`bc388#AX;uh*INX#E5Ac0JyvG_$)%O`< z&Xcl(>fS+<`483w;N3CW6wli%D!k{YnMHIBp5#1HYi3fF)J$C_Gu53zQ};V!y=dM~ zCM4pvb}@zZiK0@X!`9$zntE+GXdBs|4RpTssMq@~ zju05atllF`&KE;P<@RBUh3xj?%*m2$%=}-q$zI+~%nPR^8#SH#nBv|~h{|~2xWh;| zLv1BH5)H@CINtGMzQ8kmP5CFSqC$V=qd@uZhMSDHJ{5D2zW|}hT!ILk7-2I0vrbgW z%L|-0>Ge?fMn^MqeXOYPTJlQNUzZy%cF{gDiz5=N{&c!cA}yZ#v<=ciSo>Shq4M`>oUX>1)Os^F3(4qNyNP#>FULhI5*mG`82HbM)J!#ghJ7m@pe z>i6e3Upyk!>XV7iw@*m5;@UPR=1Vm~@A*ynZItOn>D7-rS1{dHgLwjjx`81VypimJ zMD4GuP4L-#=6@V=y7N?J1Xm3-IX6>O7QwGOIsfb?LA8&FIC98fH=~;*2eS@+>U^;T8@pS1)xMxnZb>xf!WjCOh}^krtJF+Ig;> zw5U&xIA5NX7WK;{=i9E*qJH4-#q3L%10t{cGBdmLW>K@s+5gEwW;HTqL(W`gsp`d( zrsi!*Dyy9nO{j5|n6I}<2xT7yOaU)KHO)&i^-n}ZWxu`Nd4H*7qq_Y`O4cQ;D zX&sTT*wBpX62g1xIlrm(stGuw_|L0M1tN;i)37?Rjgl2>6u%egneD<>kU%5r*|!14>Cf)A5)h|FQR z&L4x4iSXYRn2fJ7#2lL<8K@^WScSi-Ho>V?q5`SyofNidqHZhm3S{0veYiU|cvADm zAd|T{MO5~!n@q5Hv6vFp22uOgUejDl02;9`5CKPF4^lOdKxE6=M2pLafFkwxOEChQ1X4jhHsr|&^IdxN+ zBmUUO1TV`Fb8)o*G#5qw)b0CB5x~gVYt|^;QEUM{Iwqqjp4|MHnEL-%{?@8r^7dtk<4~S?SzSNW- z>LIG~)qIot`$?j_(u1af^FdX|w3z5%78($~DAz=;sTEZ^eT`}STPINk?HD6s<}V#g zaNZgL_y2A&CiqI4sGOJsCU|U|n9UO;s6HI;{4zj-$hmv732$VVq&mnhSj@h%ooTuF zJdb%r!78W6VQEp3dCsK$(lW{8Frdj987nO+X^=C2q_n7y`Z+)Mk{0A$%6t&B%Gf8S z>K`{bPi_(O0^>o{yho>n?48R^#;_q`GPm;#axU-bU1X-Ghr3pp;H4F!iejdk%&QiW z6AEJas;qf~Df02G2Q{_Hczu~zqPmE<0E%BEq=V413RB*(kEp8eKQ+Otxwl}}woZ)y zIn=(!XcWzbL?sbBuCFO<-%gb8^Qt!N;rtwjDokommR8M5T3kKMBqp%gL?upg5)%2I zbj|1HItx2VntHAm`@f#+CCTAjNv>f%rlwkAClovPZ}`W=>zgN8l}xqRkD?TfL+R!Covv zqpXGc9?1E4p{cxwg$ZOXVNQS|QZZD+YQ}QvwXn(Wdq7m?3yV!<%py^>YgnX0b5WLw zeV`xpzc>_LJk|IP$BMIy7GJRbkJM|rw_#iEHR#P&T_pNfJISQ*EB|nlwkTg579$qn z`Ew?@cAF&EPLSl84EYiU8ZS0+vzVlv5^KiMB4LS>7{i~(Nc=Gp)KJlDv~$fqsZhN( zIMr8<6JAxTX}FWL{5#iE|6ypcDNSOj42>IDDnn>3+h|eV zgS#C<&$V}c=_4Ujzqi==FSk;Jb{sY3gW0Nu+KX5ZMDUr>Ca2pv`Wc=V@XBeEa}!lJ zZ}RA;j}g&SoA)~(?xUl@FFY6-IjmTy@ISgbABQBYJ|AFa9h$=MYl_V7PIMbB9U7d% z5z?Zr%6IDNN7O?B=jI;F|Mf7EIlD^Q=*-_v$Agb}W~e&)sq^!4Iv{+*P)nVm29RoEPZQb2!v&-R8WvlOBsau=-8TSNkM{ z?6*fc@5eBVijkQk$F(^?i@1I!`^+{`!Cx~_RqYwnBKtG`4wO7F$7KCDguCAm$*y0- z{J)<4Ix$B~!OGL3s*9PQqj)J#PD0UJi=Dq8lp;h{l8%i~>tIuUK>egD7)ziQ^NVA%5EZK60@E;Yiif=a04`#@la*Ndj6>ri^7iUjqgOY zICQfo@J-01-bn72*+z?)NhUF?RZKS5zRF_x7HP{_bW|^QbCwU_`vH|5L>+8#GhmXDYEW6XezGjD5~=H6DD`kI8okA5{J-mH`(&29(dM7?>sFk{AK#DNWrgs&Nx_1X0j_zB7{Xf5FIoQa|;y39UWDHGf9Ruj*w&&v6G+zcAfG_0FEo ze-CiYA0U3W-{}$~rRvs!PCp(84ezcjQ>~Kgc9V0ZH(GM8q=Q(=I1M>B zoiV|$62*|=8dQ5(t3!@(>8Mc*QV`xm4k%_{m1bHlVb-GxTb--UbM2#^L5Oz@W6M-c8613`y{IUhCnrDh1l1v8YY^Y zIor6_vBYme4a3D8pCTc6*+0aI3jTVT$?Vl2D#SJ`Reo7-Q+V#IsG=tanam{&Owe?p zv-1lrG8ZsILdMbl&P6-`Q>}}21}u~eb%;^)p?*C7r9Y!x1fOKWf$*ljCh$y!m>?4e zm3P$1p`G8B%pE@IJtxP9(j*A1)U^-S${ZfYX81iRCARNo=;*+dz!*7J4N|^ zTJNxO?K7KbH%aQyrOxf7QkWIAB(E^YFrf@dRAuD(Ank95opnA*Q-2GX z3)XV|mkp3uRZ3@o_>^;LJ$mJEL<6%zhn0?4KUEq?tz~x41MHGJ9(>Wa{h3f1u z=NA&vP;@N=SCsn>nX#r!}CF7*>BIqDoYA$1|kIe$*d5W0nFogPBJC76hc>zYi) zMXd3ubxc0h&EuV2T&n8OF6Ty0DwO=10yPLexzyBd93ZN>id_|mEu(rO3a_X#zMn^k zvzq!JKd%lUSZ5&LLWa&X}~Ly{LVRbR-J zRmnis^q}n_@!zgA75&&P(a$5{=#8++o!m#1K9^oK+%wQr59%f=dKZPt5Wb8~3XvNl zrgTPwsK(6t4-){3_?)evzrMmL~r2Oe2 z=b|*{p7UH%=edk_n%P%(7S%!pBU5ycO9@x^a5&pr)WiHYY9Mz##j7^S+_=<&V&~(% zTtRy!?~3haRyphc9EkmmH91c)I#n-nZ6nk;)cKl|6xnB^CfIQ=mk;5%YY5Gux}>Wq z{&OdyXq}{b!B!Jm&Kv^eomg8&;ZL=u=*d=YVkEh~==J8%TPm(+8x1o4pQif{u(`?~ zKmJORBuSF2Br8dhG)Y#{BuSEFWoO11j2Uxh=HB@|~pD%x-?neV<>i^E&4=BU@d)9d&Le?5;i^;C!1R zK6NY0wurpf&op>!I73`n50lq!x2TEIxyejQT++czy|1kp@4hO2fq`vI5}7Q{21=Cf zHYw|dibJ00I=r*POnLdBOnEt3rYs`X1%C?sJAJ~;mR~H`(6x=Or7BSNly} z3Be>)JJv`w$~ze zMTrR&#fq8VTtX;VGS1|aNpIe3E&1=U|Eub6?At_e%WzZ75L^X6++>Pb_fds8txWLY zfueka`a4-0h?H)S&<%6U^xmAHf$Aen>(p}*Q~a-CqJnRPP4QJdr1&bYhm`$yj4Awq z+2^16;N6R%$=rejB$Xckejp?UO1=g9#w)oh~N zBuUQ^wo!9>a{iM(o@3sIl+WqG)Gp?4>T?E-nDX{)bdV`)=*d2qY$jZYP=_P@MVQAS z^?%z;$vtJ_T%bh%h;uL7Gf?^u4!A+qUj`e`YuHPj-b;FXf~kLKJ9T=ygs&mn0abUb zGnJ365i>1EDp8ch-9M=Lc$&#=%~?O{A-3^i#sqG{MUd`U75{;{kKjv$X;9p(x$;;t zV;-m4^>Xg&BSor5E92cylp2xN$;LmA`5OWqTN?kHY|TQT_ZH(n*;mYF!g%Umv=azi z+R=HC^+SX|2!ruo_^a;DA%@Io>~h3Juh>hQfI{lA>P*k3YN_99%sQt}oW5P^K~nlr6O&tT zkyWpY61psGs*fz?jbAFol?A3Crk|*yHtdvu??-Bl`r(|Ze4E*^J}TcKOA)29Y^72U z9Wm(%tHey8t5m}V8(-gjVpg%&3+XSiMx+88O~IFaMNMBr0wVHUOd#P~e%$1o<;WcP{y58|{W4P&H$9rj);^*dYR{Rt4~|nij#Dj} ztYRW@1ZOrSI(0Eq#|#$7Tf;B#)DV+Io{qDK60B0FlrP3M*-nXF`^=Pgn#+{6RbVmd z@UkXdDe*1KE$YzuCS{aF(l1?N8rrsH%)q1m(e5VPVT7ovyIC+q;KDAGdljqN>fsh< z#zch`nY`P`3&4~Q_lY;< zLoOcMd|2X+#55r|d<5SuF^SE)h)Vr+tSS94R#etRZb*SQyQirhF;`TGRSs4E=oS<1 zaD;!<5&l6JOy#tbv>zwg6>&&$|J%-GCikiX{40s!o!n|7t!bO_B_cM`q1-Q+yS57t@z;#2P|*drisxwB4wCY^{luu^q>BqJ&psd~17%>A6IF z>MItURN82h{a`my={3EZtP(H1W|c%f%P|cEhE?2AaypRLE6z+L55OVG@DB80gDIw_ z%y&{*pfL1$snnXkas-=MPl;vQOv=$YVve> zz=>AxZ?;f;t}!xL`S5k zQD)zG@gvZDpc6}=1L4hWO=H)VJ1GMs zs$LrAd>y5uVPEJC+qSlMJFW>Q;r7K{-gq7?v863_eC*>hD=1e;(u!eCn2N2y-?p2S;|s*lpQotf z-Ax7!lf#9RZ;p`6jw8*KZCp(B@j6huem>M>Eb+ge$4cVmV@&Bsr$l8qsJDjsQScDEN5VeLox=MOP~8`kjR(jfhxm_Q#sR(<$? zI_P|Of;SiYj+;R9?Yy~oh~P0AyUsJwE5l-@$4FFl$#LqtOH_@W=Je&)>cKNk%2r-j zytKz;cUs2z-<_6;M<_*AJQ(9l+`)^qgO}%o@n5xr7ifosrstS~*SQ%RB@eD~{&P%9 z5GfpCru{HZ9Ad^lU#)WjHG zB6Uwp6B14C*&tK>EXkUglpvc%C9PWQ{GGj^Y8402Amyi)j`vfDU*II0LNR408xKEQ zfq@ctrmyqM9En5X<(!U(xL;bD)C;VBqjW2=VPs9=lvH@nlih^skt7--bT2gt^^XrR z;Z8$ERo%ZbhquN43gZhf8I|7#xm{Jd&HjOv;V*k(0y(HSYtuuWSFBEPPr+yVL6vm!)`mW}M zLTtoI9WPO}fIc1Be<0f#b)`F;`hHS}z?>Xs$t+sFSrV-4?fm3zrls2~nI8{!b}p4n zcs-k&;Ib+jo+=uhsv$>-Za4E&aD-dww~-(^ ze4}ADhuR?S%m$Np2eD*K?9csAW+mlH@h09oP}J1G94Cv&l%a3WnlDMKyEd6iiN7x~ zDW@XhT%=U3%#_c$CG&GKr5M)5{by$ry72#y|KD=3N&PKHRO!c@|G-1Cl6xC(Zdg?H z$ekuMfJ7tIKdx`@LEc)Y>fZCbz2~K{yES@t{yDP|5Bm}bRw1r|EjJga3^C( z_xwtxe#vlf0oAN>mh$H?KEQ#&9M`Mx?rFrqd8BQT694=dPg=RS&gy zQjhV1VgWBOvO703b!9BiDX*S`GG-yOj51sYG^lF%7esF~N&FOS%p6?$~A~-n)kP0R#Fr zp|u;ZUZ!T#!kO8W$f2i1(pw9hH66Jp3~%Z8x=G6E7EQvG__@|h`J%l{*)-QPHdVI6-25s%tl=VK?sy#&vY=q6bvoLyY&-w4n2HwM5Y<7fg0%4irIM z*>8RPqfe^@TJKhxci;9X|!zu^-3qmIFhqKg}v*Q0dsZ|K{U2FWO zyNTHvBYyRDKNGmTy_koWQDdm0TY5QPkvZ`d`Jdr$Pn*VWhp0k_s6OkRVnSr9EB(KU zCOhMnQiafuK3@&(@9-0ds)bZBb)d8J1GNi{myjui>>CqIV_QOTZJGbqc_W;L6;v&P zgL4_hsHHtj`A%{1M~Hcvd{NYG-Dv{*SpU~YaCp!Z=f{c4**Vx0_}Yoe{a}MB__U9x;(qLS zP*qIHQ2PUE_n7`#J5yU+E2`ly=S|6fxq1t}D_1x_brK(P{>b_t5An4fVoKYu5anCf zr2Q)KsT;aF*ZIV!ZrJTyPn1J-=+WdbB}m0GovOvBmhpS2zxti!eTXm8F6{9*)npH+ zn!K>w#9yzq(unQGQju9c+Ct(wp-Y{mz(O)6`D z=8_hYs)VDRF~$34pG^6N82^D265k`H$xce#nq(5MB?T9$zjJ6HN&K&?q$jeNjMBj?n-Gv5jNz@FM?zAHx;uKC@{w~zmEJnb`19!< zO-o9Yw{=4NYf(9po$xB{obmNLEh^1Bk|b#=$`QO~5hb44=`?bRnVPxDnKf3@RO3o# z=0LuWXNEhoIHC#ZtZtZEwpk$Za-fg*M#?uY{Lkd@*Op-_y0G@X8&PV-o8>GbV*4xHiEQ^LDD>fni&D+k5SzSvyhPrEo z(}Qd$cn@&29wOJSF#eb4Qv>Ep;Kp{wzk0H$fOpqkYQSFc{}StbOt?&utEB=hW1L|m z79qT4jcNR2mZ)f(;ZE^+dQ03)W|NAZa-NQnsOopd8M>L?5@~ad7hOpAs17*UU8+R+ zKB8GxEU%bP2Z>L8+}!!3UVLgtJLlv5d>`9ZJKK}Rr*^QEqel00o@^yPHIAI3al^^~ zd-9kwmUdb_OE0)N{rCjE~brGen`s3~r{nr?SBS&;O4 zi2Q4sX_!A!RQw%WSctrP`Y)Nrl|H9v1_4Oad~?p^wi_g7IOBfIn9QOTf@`T+ zD88|!@+A23G*f(OL{#YWdCt)U38}A$`>E4ZLG`aV=cmpRLU0GaA&T#AWrEC(RMCyo zoNL!mMbU47b1VD*;XS~@_X8fyVtayy@GoT4iolJGRN-IEs272L1drhVWxwTNR3lS8PajWjckU*BuO3cxeElS&s$8|_q3?`NIOo4V(5{M zpB8^D{j-V^Dp71IGmZVluNr8eR6V_%Sw)G4Gfv|k{(pNU>-Uu=@~`vM2*!f*519Bn z2aC$Pm-!zLnfPaEQb4ILnyLKZrjaR_nM*lWl6JAEq`sgNQoDwl)T_Ca&g`TFKYBIg z1hwIZ#poyT{iqR0yuK|w`uNYICd+@38gNm(#RM5pJ?4-J-G71_a6;Om~bm23HpKyx`@XjdznRCu347b$5Rwi%-FR2>N@C%LI3F9Nm zeA3fLw6u%UjVYFz*})kfCs7r{R7yR3!trh7#l$N+O!iGjcqxxaU1*3C?J0E#ywJv3 zN{vFWVY%}&OS~v}n)nY75DG=b8J`LKd%vj6y#yH$esQ=7tjiFU`Ry`Ov1ufyC5+^x zgbt>-`(}2@ZWiCH4$e0V#izdJYXl$dV!}VH7FF)^PVzwgY*R8SLsVf}tn-sk3e}bD z=RmN4k4hCTFu4sEx!?C9gO#(UJmsRONP9ju_!lymMW71Gl!zaJD_H+mkDM{JYdKsB+3$@t(-wwBW&f4EK8VbxiXrRffhN6?Y(7WBODV>Szq`Arya98~#BoL9aJt<%Je^~v&TJX1M8;?2d`%97PM*vdYI@@?d#)*nt-_rPB zVc6&K2;4-ShJVds6Nu>~%Kx8;^T}N5GY--eBhaeId6epf@JA#iqp?Rn6TSK@bsMEb zNfa|CGjk!;8siT;F)VaMc|?a5Iq4%Msuoe_)i+yB_RU*G)iJ|0QFbvS@WM>zjouPK z`N!i-Fxo@R=~xM(GM!V;P%*4~lXaAsbl%g4qz~F|@^5a#>EyVS17cAS!=WL_?|j(I z`0WBWB@mGMcW2YEm@|P9Ke>m=dypX(Ci-}Z4KJ_{>Ab|4x|qBlvx*Y0c>{P1kfdYn znp9EZC{b;scBcbTw~+m!y8BG!*@2?cGut|`7bP8;&(dI_wBu5f)1|MdNFJeg(}J>v zq%R~kgrN6Akp$ImvrYP|b4f_X`~nk6m@F#b9WZtIEktEMxYtbieTz)_eWXme$b7E6 z)(P#Bc;zj0LiBpdYi|;}b8i?*_mTgjkA`;LO;!nqkHK5T93IsP9LI*xLw!trN?%do zyT+TUCl~{wGM!v56wNL(H77U|6uH+EJ5r4I)r@q`j7D%BO*V?VK(^Bm(o8Fse6J81MERQR&@#7~g|z z$3W<1X2Zz%eTB)4b`q7}d#I_H!r?{8{Oy$SUo%aV7yR2i2950Txn`pYKDv=El9TCw zZt0vGDP>4sN5}O!+ftb7`mI=;>3sa*BFqZ#J^e* z|4-p>uBI(FCFgR){N7Va5cvBc6FJgPRKpvbe2e&SZqsl{mmYKR@ zlsKCy@g`?NAnCNg(+B&t6f0CJwa;PaPI@fWC&MJS<_fke*J7B&zsOOIYTlkEtts&W zVSM#G2bHS1Yfa+q>?K3#*T+l)F$0z5d9!%T5^qg^Q$4YbsL;@@rrsATDtzw{Q}t(h zF;r%7S{jPx?lm<(lYWofj>DX%xH|wdGLubk-4?3c7HZoG6MTg#2(S3EX`(`3R6E~~ zkdWHnhobl7@sQ~T2@~>r7gup!qjsL$R#C*!yt~!)p0>C}IR{zaLw1i&rmlP$RTYi1 zOkf^evs%{A1XnN}LvcH%V@U75&Xk?*B<6n{eChGXyhu6}{MWFyi;CnHCVd^93cO34 zY3b)hRaSC1ElP5!LMkt8(wEE@Rn+B>a~-o_b+@*R=ovN9Yg+RY0sBilefSrhG=Z+n zVBvq8?;${orTk|XINO=ysei9Dfh%XxDq;lH6lFh$opW1gGqy-w& z=TAlAR|5$?s6ow5whR+h_vQg-Wwq2HV`(#!dF3`yIg7cZ4kc$#8ZYvFjHrg?gG~JV z5u)-QBV`T~z4=b4txPm?D4CYOGs{`mLZ+H}%6duqtz#4YH7+bRsRKKRLkl|)_i@JL zeG5HFzK&y6uZxxB_PeCwkvNmyVxFk@?Wdhjc1XP1KF;}sCKieJkx+t?P!o?_K$L#R zMTE$z*=)S`H;bxH?Q24W^_AD#^YQRWea;0Fet_r}suDSd36)ulY*6%SwW;}agQ(ma ziEgR57&9Y}YrGKTqf^BaMntGI~M zf0RVkaAFK9ga5BuEXt!vWf-JR^fQgkI*5v%-st>qj6~6RMPHNMiw%TmY|9~Hs0(*< zX10<#1YTs+q?WBVncHH;>>~34>9-to`jH9U&+8_+g;6u(nNFhedvj?RLd82x0qwa8 zG51r!5v+=-6?08-yA8DOEJz$>#Ejy7jBHWy$Z2OPsXQnCU6yD(9@QNt zJJ%hSYLwAutMtZLC(wy)6?na`!;B{#6>*)MBKizfe8QO?lnNE(FQ7`8da3E0lB>8A z#IU;VRq&`NIcyql@55)?N766n4^qwPwbZ4{otBA`uCCyW0CicG(}Ed|x|}^Cs`*~0 zC1X8xX?qhn-Bwfst)Ghjw1D~lrz9T{?^hG&CN$Yai5EEG7E^Z-4L7GL@kP)~x^AtQ z4t->jq8(AGW0GW7-A=LYWsvSv}8MvgFwmYgs(7uk%A;Ja&0@l6M4j1EX} z5sedyTM)!RXm^=-`Uo8#Vj?#Yxq^T33KQtoU6lWwhzayRPa|?({O1@Ws2y}f>e~Vn zxN5wZ$4=6Q(0*)-IQv<+Qs1>QjlCHcAlhy_^}pSAiH6FYTRKTp&Ek71zOB=LKaB{6 zFLyFS5><<7aMZsiJ0~{KhHRkyU?&x#zl?PLcYrp8hU*H_`H+2k$TVKVfUuEiP+fSw zGc!UX5}^TMtxo-QfGPi&<5ty9Mlc8x4Kru@NDu|%x#7l;$UdITr){KLsa@og!s~s+ zR1B{b^C(qUc~j@mIB+=J?~GXBZ#Tm@Rrv|D6dK^7ds4Mek$`8C(FsKX?m zqHax|36-RXDp|rXtr=db9t*9V;sSSkUDC<)EmE98zLl zZ7mZ`Jtc#c{k!4u_&T=9CQ5EXyXmmgb&O0>H*rq~QYUn4LN3Pyuscqb4_IU>P7u6C z^4;8&b~o2_-%TU)8$nI=D}xtxf%&3IqD+!RZ)kH#M8oxCOnvb*QQ=3{nyOT`P9e1W zv~zqlRh7lY_hvdD@M{!I-DM*GowXI72|qoA12L z$QJ=dMk>58WCH8kk^iy2orD)Zz9LbZeTUwwPQ1g<(jn~srrCcJ%-n6G&^)OS(Sc;{kK(QBC{ ztMX>fEemMU@hsm{@w1(KX|nH~O#A;R<38nY;k?#fqUz8Y=f_xyqVdumCi=@x+H{=f zH$Y>nAtt+DJ5hBNZJe2BY0A$^U_N6(^;gD&DBm{H`FyODf9{dR#A=2)vxv5Qkz{_- z-}!=AE`o2)G{r0;tMpr2nTkhO(}rWjXeV{PR3P(r+I;x0?P@|LXK0eoNWowICbaM@ z<4Deckrc^f{~K|-T_*oSBHwDmKvVT*j;Q=Ql1=VPGL{g0Y_TcoS|p~!7Ul-b17gYj zR8KcIWxtfs1eZzm@#ZFn!Hk+QAkGxNNB*}yrk^Bl4+U$sn35$s#9ZtyB`Cd|{lLhU zb0+=u9SlTwNaZDMO~Ymy93;f#m^|McQ4=@yZnA_DAM`U*FD&O?ApF*Y`@etd0b=o( z^Z?DR*-nYU+){~D-fUA!2ws&Wnh8&D5N8Vj>eLQftt^)u#+3XeT*s&ZF}Dq7Rr z)LykvRPG;7ILSfD#f-8!rZR7qsNm;gnE&yJbU$YNud!H&z#kcOz`t(32@D|q3;+L0 zoX=*8UmcE`K$|QvkCU{D@TdKpuMbc~aioiB?90Iuh+ccpDJSk2jkExl~cSw#4~1EK&92F4K7F8mcG}wKGZ1`O{QU4k&B2(`5JCNEKzuR#ERf zlgIfl&(N^UU+55o2%!9Pve*%PriJsLZW2W1C!FW3zF26yKHEhFSGG6B?FWiVzjcwx z{I07g-*DD|l}Gpn6(g7hsmHu}9+=kC_$5}%wJa8>%SV~aOZdZ8Bbn{Uzk?iJgi52% zD;z$7g5~W^QCFty>UyT_>YgUOx=Rtf*i9zrjU*0>vR^JZ=QlB2B8qX5{Te9k*xS_2 zBesL|ji*iC3bt#&i|J|7))5IqWpiSKX!t13Bs|CkHOTYNG7~@MvNE%Wau54|wlU>G z%B7riteSI5nK?yyN+t~pHaSVDnw!)}TXCu=Q8CXXCk>Y5iJQRXWlyeg#+;P|MH-h% z9N)=gq|En(hm`(@G)gqw;4@h-v8NZ_mjsDXtpiVl#ul0Sx;3K0;|Wxts<4kKdYd0F zYTIlyxwmu|GnF&pF~g&$L~uP#J&L<}qj?awd9|l0Zoz04p?_vLKlG6hB0X5Mg@4Hb z6QD~~ex_I|a9yi@yfUDq&vi} z@h138h$@Hw%r`~%(7C8yi;VZsU{RUd=_TRaNh^u;p8bvQ(cWT0oyCWWk$swMp~SS6 z#xDe+g!6y=?WtnOyo5tS)y$zLRMt&Y!SXexYNdz@jy&nCqzOfFd+rBPueLX7gPA{| z;)9LO<}p&CJ{V*oPmB~Znqb6ekK>n*bTcJOnSvwj-3;f`$&!ZjmspBL)gh8f)vK|l zd}x8Fbb3gYxt{w!PqD zzq1Q35x(ne0&OnR&g1dfCj9Ao+Ij34VJa`{C8}X7xgAIt8)NbU$3;!tKCB60-R<~v zDD|I5N{a)|<>Ms99HcxblO9cIvWpVKnHeFq>bx_9eSE4aY?7xixtPLjnv>^9!k>pY zV^{N+SWSJ8nrYXL5>&J=;k3Vm!3b#_%w^Gl^ z=|k<+V@&QXo2ctZA)y^JLSs#&$6Tr|)$(lk>nWrj;2^WSbH z6^S`ZE(tOZ1Wn;1%ZUNuagJ$3#i+%m{(6E^`l$POwh8RpA}XVDqse`7xv0`1)h04y ztEfyp8v@g|cQiE%$aq9)yYZ%E#XM1U2k3Z^`4fvz2wjz6Dz9q8#b)fX-#O0H2UqB| zGI_!F+-%lfl5-=VA<3a3na@;Oy~K}Ky~rfPoTtP*Coz?^Ae5|JX-a=RDJpB}WaAwo z+KFm!kEx%{;dQe;a`)d~U}~=)C@T0K%P%OtnSd06i}~D8d^s5s2<=I6PV|%zg1bhT z;+Ts}xrw0Oy4Lt#KSzUeP6D_1jeq@a8l2q{7&yZCe_c)fmp=H6&5`XiINND#7%-?O zhMMqaXJ}w>fMA6>+TYY27Ez7;a!m9(hT^Is#<_Jj4Gx~Gawcq}(ZPN5oyRg5|MQ4u z4RKx{B~kTVH|Jym7mg*+$Z#PUqGwJxzm`c9jaTx&A-g{}=Ap42Cz_xxa>1E(n1<-E z1Qzsi{>J--@=wM%UvU0w`4@4#wP&3Fwv`|;z#Cp2TgvTDp8@bwa%h`5<(>8kv173X8X4|lmFoorr_AH%T%qbWza!t z^{D>F_ZT}OR0ZcjqWTA>)@sfiQ~VY042t@1c6xV_B6vedP(<+mXaP~o!i5TYTQ^A% z#l1P@4#BO&=uvz-c^W9pU1+A?)l*dN`w1p=;{Z{GCw7|9T>f>adyyYMD%&y-K*JY| zsFCmzmro+EthJf=T^mu}#P1^f0!IjsBITxCPS@d*VrVYA(n3y_CPYIgV^Xb2eVN-c z)k2nC)XPlIkzBF>-6Xkqr6j!4(OJ|-64b)E&MR}c|Cwo1!a}ajMB=pGCL@&#CskTE zC-nkfV_L*yy}?QdszawuD4ss%HEglSV48v!4?6 zj4@H@Eg>sGy&h+#XLA(~(x0WrL&=%L#sZ1Ixul-+f76J7qx3hn*dc2fX;JVF6P-YH z`AHLsXS$90IrB_-5<@RkG09Lx8>w=r?U-b8do>r6o-DbTQ5iCko@~X1e`y3>gtnPg zE%@J?Yyt!K(mwAM{{>)of^(OPv7_M225wGt?lYU#0sEW}cCygLP1rL8ShR3QyTa$U|a52xUmP~}aQKsN; z7ic9J$Bp6-Q>z&Np|}I%Ka`y*F!k#=t^?DTpEPBCxX2hKfA452+w~RI@XsLq|38D0 zuymNo3#}G4@q6A_!}`tlI6lp!bdM2d86|G%XC|eL6Ni{#3Z^o7LF(e3O-SWkj8|8h zqPA1&i+mt;<)+0)9>f>}-B&DV+WmhSlK`xgnT4`#J9}`u22mg(_g+s|u z`SM0*CgB)Fw=6Qgb7V#$tyeFToy9gDk4M6C77x^43!G&eCBZO%TZT8*o5ZwJ)Ra^F z2&2yGR#IYCP_B^DW{J*4wsawD8CR~rWB#bB!$DK@50ceU+wqim`Uq}lYl?5)z=((N z$YMr7C~iqO4WT_u$JB|%&i>8h2jZ8O&c1P6!HQEIO>j0nraHI86m^>;rsH8LQumUe zrtV<>ClB!+-eDrQC5rODvB3mxjS=PFu+Rhsu@nP8?S%Pap7_-4#I4d4r{uUM+ z)cYyUogKJBwS#z1oi_f`^`a_&SYXnZjuLa#NJ&S|jU<$z^wKrPw|cCYFVBci?W;Ea zH)vZB=uu_-@13HxJ;nOppHhr}7mH5_j7~EC3p;6karBr8T(ga4m$&(;F(&xz30gax zW1$*>6+4`l`|)G%$4`;N>JaTP&xwrWqekK(XJoZRM|wQ68Reqr=Ce-6p}eKIH`eJr zpE2BgUeLa#u3)j4LdFgV)DLr>=_mm-bS1YJk%W`RckM7S?ZV{Sw z5tFdIGwncU$t&k(Q%pRrEgyau*W>^tp_*HkJ3YEdilHTB#ylx?n=@^QOj4<1P3mj3 zd}>L1=d~Vu-9wVYtHetV_m|}I&2*KlSg7=KW=2(eQMDUdJDdATEh?Vma3Zsil4^Nr zAE(0-`i>=1f1U$Pk)FgV8LBTE@BEiUCluUGI1i<REyXU$}pf#52}>?rQQm>r?T=S|?PW~_oYlk`nZHZu;yj1LGrp?Y7A zsd$SC3(^lYHwA0Qin*87HjhVI>~iNbl1|a^&;V2R0f}PpZd_)HCyW>6e}E8-8obn0 z5Cu`8|N5Goq$E1>{0(ay`&J6b{{hdUu20P ztE$RsGwJtfq7pu8#rXdt z=Kfo1P35sMVouDFN|dadYbISJ@Q8$O4mKfX@Xa_$%ySw#*NV!$v);+#MaGQU^(MH1 z&IrZb7^ool8XX>rTk`oAw`7F#Wuo(AR|z5b#UN99J<$)Ozr4;=-oWjZXxP8gBplo= zDzCPSNw~N~%#Sl(sT@O{Y!%Y#(@~XD`Ad{POTGWgNu46~={h%rSV^2}RB}CHU6<@Jf zRA?{#w>n85j^G@EN$NboBt-6rGyY}7?Gfln9tiyJuQP%B`*Iy)U-4h0J65~bINuZC zK;YUr&Y0d3K=%E!73V)cq1_?%e7?^)$gfdwf$E`BTbklwJ4NOEXNB?I9Tc;7uJ}-S z6R|-weB0hkkfEaTX7w^jE!fhfF7MD}AthU+QXX9F#CDMsLvtESb6Szo#|?QSzu@#Xlju$FD~TxCu*{S-_lwF} zJ;!*b=yXtBLyjNnU*@z66m1)4YHvO*D)@dgQ{0WgDT1$6o8l{a^YQlP<=*G~NUjNj zU#vA=@ja(RMS5>H{$(The3@X}y3zRGr+r6Y&|>4i*oMy+yIHhQ-xD=Q;99z1^(2cI z2=D6dd{ZJ}b!@n4?0;BPv}2qi|D%c_mAdVs^E@kEDv4pU`V+GwHENWT+l~7?@kYow zvQDDvC%LzRkwpe5{!33G*S7xn!ot zqwYh(q{uv7Z}R*06_vY+-6czrFQ+qdt|E#{=J^~Kab+;SDD}^BSjVWId6j7wsDy}0qQ?+@Di5M6mxh|0p;WC*>bqW< zq`s@pG-*jm;CX%&?IiidMKbx}^^O-SlU3?GGvTJ7n66ne!JMSTO&3jKm{o3+T`|P? z?+%NqUy@_Ofv|)<9#u10*+f?RohI$3&7ypjtBm(whU4(P)ZHU4K|iM@G^~Jd!%@GAU2B7bilAv7F(ENzCP(bCjx+ zN!_(k%ooIg)UMGc{?oIhb)RKx#wt^KWU{D||0I|ha}SBC?zP<0hlE;>civnjA$2vg z9F&b%X=;X_7gc?bL8SV32UEFU6`0%-*87oP(Zba2pDZf3Y^2Gr>?5jZaYs{g zfyhS9g;A2fgQL;Zr>9K#)Lck8MRzS0Bm4NqKADz(&Xo3uh?-VZ zYXb4ia^U~VC=*B+Ey^FyAQbtjF(&(i9il4s#+lO69il?N9yIBH?kFnz%TbE+pXUsB zc1I*zJsULT8Lh;m7fHFwTBQ7w>T?f zWU5(BNdxsuMw7jiIDOHi_NA7X4U+2h<#FdBll(VUzW!D#$;+2Xa&Hodd!Ll}GaU~;`vAVGl7a!T#$Q0Uj7di~n1r9sh)OKnZz_`*Ey1hoJX2J| zH*7dS!l}t7FUp7(2|uSer}p!G{^Oz%rg-yYQI)T4b8c))liil)I>RLVyqEuOFTclT zQ+6rU8TBvsG+|$B0r&q@ljVr4_Jd4Xmt~@Sm2Hjp6SEZfUgUTtBwsR6lAkBVdTxRw zzren+7dG(gT@v@jM(3ZLoNYEyVmIG6v6So?la8iz^8hK`>LLYd7@4XFe7D&-MzkAQT|1b_J*&j@A0!c^ z4Pw_LiXPnOo#M7EC+)zHX-6yo-bFnK*V|AmK4?7qUerISoFtmSig?9>TI zoW!v*)$FF^Mzlp7G@@Q@<1C8dYhuF(NL*3hjB*a-@O6&Fy)xH%b*RLdLzGy={4Z{i z>S`vOohz#JJ(@}Q@9Jf0;#=`qx8idiV7%&!qS6N(abm|yI;PJJnev<%QK704&eeRB z>b2R%yFZ0XjZz5Z9Xc){)I8SNWPiw+E@}&F0HzCN7xAZNne?#)8`Pcb^+hn1MMV_e zQDEvf7m4|>xzwvIta78`XEBjh9mH8lN&U|zSI_B5*;BGUBSRexj9^vzhx45+ywNCl z%4f1C^A|%|>LQbID~C;^;NVD8mQBlwaB!#b_go~Z;Sx3`z<(Qa#oPLl|8?6jlhNg* zn44xw1|lksB-j(N?BxjFBnJ+klIO{<=`& zexL7LxT-TvXxw(WZ9fL0U4d;J%&41cmQ+Hq%e><|A({BO+A1P5+PZX6At? z8`0ZTf8A4@)s(Agw5pl^udEjDx<00O#dc9O_tAJDyIC7E?YYUKO8ZbPkv^15rx2KO z!T6IeikX@tex%)AZ>nEzA*$w2ZJV$h`zPEt(;2AuzYJ_G<+W{0=+`(#DU4jc%?Hj8^00D!}JHZP!@r&mpccTC9AJH zI|l~vHA}M3lLZI=?X{*newnC@i^EN3J!^`{`Km;*{!_Ne)O<-25z@!fvLS!TEHnM5 zeWEHDy{JgrWK(v_PU`zk2`2eX-3DgTnEu0Y=LA==qhZiilXoOm)O5a94Fe-!{kQTI z>oRH$C)ptL+4ZJ@sHlp3vBorzDx$&d+mNfA}`CnmcH{LV@VDlcmM@8WFn zUR-CY55$VIn{qcZ7!t)$lhDUh{=`TJ4Sk&2!;?i-v%A&2Tu*%`pfO2IK1nKO{s76x z^ncAY#Zx)N8u=;SG9JrhdTAe%#nFl?@U57NUzUqGO*{vYwrtfv_(Qf-sJVI03v9VS zfbI4wT;JCO-r=W*%tMDvT5B36`0hXAc)9y%dXYy$iFzi-6mi~@s@cnxEU4a-U~2Bp z5a$Ht2`Mkz;}p}Yp*FdPGi8a?BK_+a=c`qcuHL8hRH>wF!z)icPj|>Aq_2%}mM}L{ z^GHNci`P1@v+Z8JOS7#0#(@)xAE{ZsT(Z^6G&X9%X=nZ%$yTp&z>#`^-%sr^%>SNS zFT7w4Q=Cuza(5*w0G{toLns9eKxJ2GdJKaPg`H=59<#iBB2 z?>3c7#)x{@d!qFbcpGy9hJ|frTnJ~j6 zHGN1k6F4|m9OAkM@$bRTH>_qO`~rPEDnIOF0!L2LmoSX`=QK0rD~{aU&!T2pl1ZG< zM^yTkv8Ghm|ILFGsa7VwqMj%RA{-8A+E8+8?Jd=&><_g0DsQy&d%cvQVZs)ZRkEA| z%$Tyj(cH|~&T<|KS`0H~JEEeh-=)1k!HeE}9`mK9{WepZ%l1l4Z`@>Zx2_j8gF%X# zeAjX(y`M~0V_TW{D$aURmDNo+GobQRu5qCm?H@~YCAny%^ zPMGm&7gNw;J%8i%QoWv?FPQW_QA{LXby1SrFnPF?&kg~9*CvN45g>mQ*?;M3sxFNa z)zFg~f$XG%ru@g#qP$RJftZ=CB!u#BOH4StOH_VhSCg@-xv2bvtxo(!$yXC1W;!pH zD)^oGfnuPl(#wXLX=kd%{Bm5TA^k17`nPI1|EZ#f$$y^vK9I3`mdQDMQB={87ADks z4>7_$QnhKG3C&^{Wf)q`BFo{e!_E-WFi`pae3R31ji`+E1Dy9dONQEa2p+?wo$F2A zp9vPC{)V-tj^lMy_8YxS;nR7dYElN6>0h1`mH)&%Q#ihjsG5{rrm+2DQMoU)H`8es zRQ_i@Oy1WsNzK#89@hI&7$n~lH9>w8HEf?LOlI#sYH|}z;got&H97o2D4fI?5j9zK zyNF{A+3e&RPZXvko0|M(q6(ANn3})^&j0687)K@|YSLDj{8vYcAx4vr!W7O0Kuy6Q zQ<&6=-+&={AjuT|g+Bx}X?z|#WwNknj`!T zRN+V8e4zPBR5R9}$&!H*2hwL}av2blPP|29mGMlJefe zOx4k~qS8jNAxS+-e}K9tIPnG*SDtWMk&=PR&@hwH=eU?VIR{ETv(02};jS39nfkAf ztj%$zBETUrDt)I(o8cFgd6w;2m^Q7C$vm+{RNZ?kO?JXKQFVWBZ_*#2-m8b|P1%tW zQU39rou~OVYVVol=|jqIUv8?7lFNy-;ipX9sF9*7u4EILYQ=UfRC)w0Q8)5flm3+b z`PcO_Sszx5n#NL%syN0H9P0kQ#bkcpn)ikSDzZG5+_Tn8#_Ubbb7hi&hKWT^BI!BE z>>M@IpPwhHf%iaVUC1+K-|>PWqc*{LD^4=hn#0aoK34T^iSy1G$w0Z+afg&6qddpS z?IRiL9sVV19W9qy)5&?8Yu8cUvAc7_Y$-?9ml>vRF)t>v{~X(dQPZCZ=|8i|WIsJp zRQm66#!K5iP*g2D7gYTReN6ff1euVXNO&GuJA9`6IQ@hAA6Wv!JYNs^T$Niuit-1&9q_uO&K zTr+o=nfIMBbLY;?y-1R5Ns_OXtd*=JSxJ(Wq*ju(l9jdAT1k?=&)4gH|9G4;GseuF z_kI63=XGA^9M_!$qtNo$AmvC!dek(P&<;T1+r3=p>!c9HJ4;-I(u&P#YL;xCH`NvE zEVU}id8A@nU5%5a7J;&frg$NfTGX>4Q!sJ26ijp&*L^F?^>(w=s?B{&!8uZM&@y1G z>(||-Mg3;KYtU|K!EB-@s&?FAlaPU;T7G@jHSnmkpm=+G6a9+VGAgF7B>$VDDUVw( zDwp#JMg0_dx$21{res7n@_d*s7nqoIiTaY%-r3VNgd?HuYqGn3fEsG2k@fI4)I>Ak`=DvDKc9HI6n;Y|7Hiccb^>Z`WKVY)MtxL{p@|T4N$+s z1P}BU)$(%=sp?kZ`Z>=A#iLtQ7ZTf71vRdmh*T^8E>|u~ajHD7|LQ#ObTj$SOSLLI z?JC+W)o6KOk!#daX;JU2G_@VJiz;~Qf+?1^;^IV;tuj5l-OPCZG(+~-InxwB&AkF8 z&M!_&2~z!=jqes#z((P1^aT-G+tw7nzf;TyOQaZ0iT)D@v?(|g6Z6Go zDS+q0D%Y-y;z8!$#+!oAB4X&y7a(;Ck7QI4YXOkD1IY=U@DaPWCEy*^h|Q~d_lRYcNJu(#ZJ?;&Rl1z&KZQ=gx39VnE70}jRK zz0CAgJjK)>=$WG6g|4QhE$=@H7WXxYK7B<6hOul1TCQ#Dx|(|h3Z8H4ViCFmv|O{t z6df5Ts^phs+#?X_L;i;qJYE@y4%D_YEmQi4d9tIlATZ-xl77tB9^wU|xQh2$%{t<$ z`Gg5=5GO|Qe;XgPDQSei5M++&~5_G-OQwmTq zjTWv7jx&XyE)&)A7~OR>DPpDvd8<%czz&FNE_XyVhg-TzEH_@_K(5x*ttIoqR8#PY zL&WnF?2oxVUMdCZ6W%*@WT@-!5h+mr;NR4dQ?7lSwCYpl_o%WRJdPMMcOXY6d?4DiYz)fXqrwy3l%vdl_O1|sHw=~ z{YFzczZA2-_$-Mw-xnRFmP`mUnbr?xhiKEOC)pttwOdA-#1+g9M)Z|ars%aLV%GGQ zB20gLo2k8VqSW5#P;};TiQui{Oi{R#xE4__lH$E*&Gf8AjCd`Q;3sWO%a%(7oG(d9 zAC_!G%R(BV>Y0(Iw#QC!b)v@F4AbBlCTjN7Q>_0+5j{p|6cwqw$7m`XV=8F%E&mOgS#K^D)zYEP1V8kPn)MITHV`C3LOCrHo5egz z_XyKd`P3xrc9_}a zlf-p``ULUc$LZUnJv+wCP>VX6K;>ak-jzE{<|Xm~FFEJLGx%^)H){Nr#)cZS%cLDSE~@&q@h0AX zm#ErHJX{d%${HUCjy!0>Uk1fYohV^6{fV#(%C3mGh7OW4G)|hpVl)(?!<|g|4eLe4 z-fLx?8JmgE(hTpzydT5{k2Zk^Xb+(If9*_3I_bEm|Kk#qC?(bh&z+1HBXq?$<2%4Z zNqs&ziBT8d=j>#8gFopYH9BRPj3;}GYY{c3kY2K^D|R z_J+RVy|cPX}+lFbS_tfUuU^}G+#^75yC%q zGG)DbigNZcvlfww`;8N$f2IOyyG_FtBoraBox2viL;9Ie5nF2_{asRZ)b<`pOR1Mi z&SiE&HOr{+6U(|GbL1}9{lg?vjil*?yc*^W*O32{SF_z!&3sJ+2DMGPKz)HV+*rRY zl?lUN?@by_Jz9J-SV#&rtr!bHaNQ0Qe}VO4P?tZ(M5C)jg?Fwr%{@nps=S6l?Q6LH zoqyAdMI>{Ii8byK6)4Cz4L@%!Dsk9ryvM_$Lh^h zyveK_B(9Z`=~PmLH=DdaGh5Xxp~i-_CJ-e61^ejy@#XzQ)s;*#QM&i4vi%+t{-~V&pDCJu+0m2@YAt34n@6B=F4LwFI=01>lPj!Z zAChbe=Ugij@zXy*EHT^!0=-2wpI>f@{>@Z8H2h+xNqo(E^GLg{AJ_kN%+FYG)MT`; z5!V@NTo*FAzgr+?Y+K1SbExM?X4B9lMn{?u+ivpSCyUnXq{a@;Ed*XZ?pn4&0`RZk z`uDHk1~i53aFlPIiJmT@$hNMJ8TE-U#Z3 zGV+b+6xNhS_*|XqxziFxlXJGWG@Mu^KI1Fkz{@*WO~i=*-|#xaKg z#m7&Yz*R)d;P1+i-Op;oe;YF`Z`&ZLt-2+hWILu-6jwAG-?fLy<2p>vMlTc0B}NbD z_q5Xyn-DhfiHFJUI!sR2E)yMgjJ&R668_gBmotvsfpO#wbTVbkepHPaCr#kd_M#dJ z3d#SaXxTN@^*&8%)bAf;63;S~3aM8vH=%(wqSEh^Bo>mm4-C<%oNy?K5$`Z6S*9Hs zn-96(CKFC==Db4g_fuK_^m`f)-!uBHE*vt&uM>tx_UG(o`Z)opw>YcSrd7r_ggYLp zk9IM^hB{HsTjxzI+aoGIZJ?GT4&VkH!EVYO{lFwb7Tw_%$6KK6ol>b&Tpl@ZpfbZM5F7R-IZzjvFq2?;K zWI^za{l@t(IUk5MGm8RF{G~QbD5SYnG|EJqxKp9>T32{C>GWv6b)_jQ^@wVWmzzKl zw^B4z9x(ZfmWpcVL39I&qdYm`{hswd5Sq8gWL!yG^2#-iWVG&+#Ll*@*GldP=I^Nc z`XsHRUMHE6nMq8ah$u06TWZ9`G`uaUwFx{=v<&_wRk*~6XqHL)X^^Pucl*HUBSA0y ze#FO+nU1;}xo0CfkTw4hE+gR-O}n?6@IOgBg)@&FV8nD{3L=B&nZWoiqUt{!YZ7y~ zis1Q}<~TyVFPQXSY-eW`EqV<}+C)ur+;h&AnlCwqODUBEk{7qRmXhtPUYuZZzqlag zP_g8yFX~P4s^>*{UuUwRVG`o&WWW=iQPr23|D{FnRr>IVKfBM=WwC`4qP62qW$V+T z!rSQCpt&1!!cq3C{l+=oOH^z&Clw-$1F1l6m1($fxTwTuQR7|D+Aj#zk^fI2>8F_C zZgx`R-{Vd0FMEq?5jFZUMH86?!;{ufBY&sK`+pt9RZk5b?J7{s(^OT7@y~u<{PkVL zGs;;(p-81g8Vd-i>NO`#aMXHH;nZHHX?>Nb@L{%Df)k!i;y@ zB+A(N7M=%uCUoT#Q9kELd-0hFHU7b!4LM!6xPCTRa?ECGcD(iFCLN?k8m%PcF6PJ> zT1t!Y+)7j2(o7InAKQAKq4S`&_NpFq>+ z+$Rt|waGZo(~U=D*a{PSlmsLMCPwN1Q8fIv+0=i=g9VA_7+^qZd%p?&mKHM7M>DBR zJvcIH2lWogsiE^}I7e#Wj4~Ny%9wXMNQTcMb+I(?hvB)FErr>?i=dgV~z6? zR}Eqlmofiu;xY+5HqzApZK9~e;z1_$wsoRHgE=RVK7pp1dX!eJA?@x_?v^ngrH0hI z7@F!#2J6U~zYdTLwVUoa@~#=55t=<;DRpm>+_gH+dl_ zo7LUS;0danivN+@gV1^I$LeCPsr=F-s`2vs+A~jzQ1HlSU@^#o@l~#e83$62 zFwTdfkNdkmIw3`73^o2r`h@!Uh?({`rcD@$IB;VAi@-N$siIOYJ>`XcfI^u>RxlVM+Y(;pk7` zSPkWy)Lo=xr~z$UcaM=;6zyUZ!z`v=EWytSyQB7QGNRS6DpT}fA8~O7eR!C>A}&SL zKhYOXUn%^Fd~8fFA*&gl+b$**QWr|v;Z>&k)h(ie_i`lQlri5Akv>yRY|v^^@qVXG z?L}S$qFo4LBK$@#qCH6H6sSJxX*1xh)G_asGf@irkiNrZ_S}RCYz3WQSXc z=azg|kAvbt+Lvs%fa+B&OpoC3`Nj!eB$133@NFYZ>^BQU#c%IpYQJA9D%$y^2_IZ2 zX0ng@ACnoOd~KsC6QUgIuEnPDu??aE_q*zu;i3{Hi;Sn|U{Ph478u_ij)?lGbrQXx zkLF0u)f^$i(YYFJIYP*I#A!vL=%uRhF_Rmkv8kFmxnevrQCv+v7qVx>B)hz=czTil zXNFM^<2)g%h3Z#b!FvhE!6~I1kH~G@EfE{k)5M+IS9^wFsj_tua1aHOe1&=&#iMz*^fj?;M?0SiTL1Ne9SEvIc=A?uIVBCLJ;z1Q>n|4n-n@54N8)P8r&L~rabD*X5!)AU+j&Jm8n!L}wa@}j8vS4mz+ zqNJ1Y{OoyAWj~xSzQ5AIHJl57#h%V4=c*Nwa~19XoHm>sW;yk8$#{5>fVjoWrQs$f7XSRx2I6`vOGowuL z&&G(#cIxSHaCJ;tmDG*8o1`7zW~%?RKvZx{2IIeDGFXLZp^4nSN>pstsI zY&?bNEg=*3MMX9Jd4dW5ozN-*V+NY~^^-&;D%u#&z1^D8o69C$X&)bj(XYeT2{j6BrFmMSJ|;%SSG3216^5k zbl~g3&Hk^AW^AU2iZ8N@SLQWJG|&{{(D;cg~8ucN4@6O4o* zeD;6|Og<{A{vS(CVmXu7km?_9LiZmM<)jy}qJb)A)WRI6J}x=0taYvED>;VqWW_qk z_@+MTBDHF7^7=5IV|G#FHn!|R@yBGs!7n4RMZ9+`PHIQZ`d_|Bmze4^<3$CZl=bO>8E&V=V%iK~sIhE>RV)EHVvO?-G^xu)Xo7 z&l43YW6&Du`#L7YsPRcBliPm1nCtpWuGv7nK{6jDbYm7$W5NnY3(1Rf!l(obNUJzY zWFT-CU1a$4S?eMHpm?i!-&EBSPeILY;SQf{`V{vt~7xXqFC_LHuMJ>lFj0rQQ3Z1 z)<`}dDL${O`n&aPOF ztqGNpc!u;(;;#LzCEd)SX1uS%pd=o<9dP|%lR0sbn8!Lwrkcp%Mc$k-Nn5CqV3BeJ z?(J;+1uWH8K>yD>s>Wp9wnw7;4#uJk2BTVmWT?bb~Nz^@oGb$lXOE!P5(#zxFqwTS-bl zdXLXsw~Ui?Lv-vG9@|qTshnCdn1zhz54v8MAQ|d;zsdcaMyVFLpGRB=I73nV2PPaK zd-Ejh5zmEfNkgcIi0_(yruu_9qJn;UM2It}r0Tl2HqpC#hzeKJWJA-ZdrkOcNR;y& z^FJsgayJ2E#2(2ofe8~t)$gN4gTyoS#`FDhQK11Q<)HR96 zc?c{KcLb886CE1sG5zm}* zEo3MbzJA+G^_ML3`lX-tU(H41yg_ReF<;EY3s#D%8?xF&Cvyl9{vSt3E#iow=}es| zyO|+7HHl1kG#2kSfhk;7sPK^`i>4AXYEgfJD9Z_Fog`k}WKy4PCo1$Xn~)&AW>C^{ zY7i?>IUD;VEuzMo^dFG%!y4D6o|2({7;f^0t`c*1cga&jhnV7HL|GjQ|BXk*-KOu_cBWxkhN$}goHdDcml;~W%!}J=LX(R{ zrOz)(Izf%6Lndc8;aI~BX*d2#&;ps)AK>|a{Q=4BILUQAO)BJ#KkIsgBm*^`?RODq zLpCJ*eHcpbvr$q%VFd)WpD}*;?unUdhTv7OIm^UDBSh7WJZhrpGew2JcSw)=9?Msn zrc1}Tz)EhifODa6%|M)#E**1-KJ?e$qCatvHruAtl@{m4jKjU z-b0H9p}+`}zN1-Ov<-IPeePb!y@Jq;;Z{upCbw04llj1MF{8Ukrg~tY$*UbCF4~*5 zh;Y;*4k@+2J!1T6CE`yzA>Kc+rmuRfqwy8`87}2+)tLcf#AfrzM#Nih;?E9c)KoX4 z*lVJZ4WgW{SD2DnT}3sQ$6U{Kl4b;Qjxqj2kr+mD*P96JJ9^I zh$;KkaE4t`95;>8m7=^Sd7src>y5AcqNtiy2TbsFt_H+kpg)1S{KMjC5p5i8!XFG3 z)!dU=@ThE8Z^{O;@r;^Is11!R%wmUgx`T<(F;%e`0Sp8Rdz*%z6T(O0@KNJEd72k^ znyfj35=j4%{r@N={qlsQ1Jnm3cjyk+-6JK}?55r=nKQ}pQnPxwX7b)5Z{t$eo82T& zaf?=gXC|BCPu7dszfg+de}~L}Q z3KQJ8OH}-2+J2}DY&6k0w_Akw@Rp&uPmQT;KZ2CI5mNRW5>-`booRIDke7qdS1V2V z%^9L%yK0QXrKuwR4ki}o35h^)u4ztTy=OH1Vw6c7TP-TBT~`xYFqq7`!IE(;tsO&{ z?^?8PZJgXOw0;b+y)pP5Jr-m(?r_BzYFCXDOx}Bk#q6MGtKQ2si7RQW!v9KNtdP`s z2aWIcQcM=*qQ-`aCgZ|M zG2ik?*W8H$@dx`?j=66f|^Ka>tRW&sd3dn zlQFKBxQL96!$WILZo_&p(LO{<(ZJ=5;+gAAb{XTp*&)*5rgn8b$%I4r{%??}-oIQ_ zFvPPQ&Z>hZGLm5z#HMsG@pRHHQP*$3iH_w#g>d4aX*y1X4B`KhfPk{j9bFGQ7p3gs zi_)0e#RM4FSM`5iU=qt>qEb^jn$Ug3ijba5+t93}Mjo*vRyPfNyE z`(4MzNrw80^9XrP&&86benIAn>e0lr-a(UeMe1to*otCcTHMMy;yR{sC6BrKFI#x%X}u| z>(Sy`PmN>yOderaR~0pWvB(7OIW8*u(q%du<>K8~?D{kFJ>e_bY^r}^xE{gP%S?Px zv8cK%5?Zo&|D&}>P59mUqMCosC^jnFbTH08hlq-#HJeyHL-Yvb4KWR!$BIh)jfe)k zZ}v8!*^Hzk{ol0t)aju~TdB87ZeM!ajuyAm1vjK(+&*723&{yrMTE;#;UJT@vQAuN zxvf+j83cxMB-GtBWZ-XL@#-ky)#2xpN~lZ3_c$F^RR8a?3I3i(xE1?Gii5~w9uq5P zq6y-StxVnI$)ciVEYE=O8|9|?I$AOaU*2fSvQNv9s+kRFn(W#_vI8+)D$UAEqIi^)(0F&FVy|^OO_*EN|S<|_e2r!ck4Y%$$iGPk}o%hj_)@8E^Jxk078J!5(nAOy{aj?mK zWU9FK690Q-ujEc(dt7ABIpvy5?!TH7GI@XHGBR;$?0((^UZL3q|EdGxe|3s@Z(Ent zlbV+Egb}9tGz$?T_{^qcDq3M z2TmXaQe&q6a-pciU*;PxDH$r1*Vm+P+AM|~@^nMy+*>;&=Ua{Ee5+{PsPl~XAoH#> zuA#+}sqQK@c{8%aMZ0eXhzqE|Z@Re#j*$TTlL+ZN&dS+acp>lwI+z;iDJu9H*_Cjd z6U&$X{)m&-Y|%PEYdxZ<;77abSt@ZaKy)KE}<4=@Ljkv)uLHZjx@6 zQ7_}>!Y$aGrAGgmCNmHf*ClF2NFI5w(oZmlsIiLV_Eo1H3Dk8+IzWxt2aUgxI8Wm_ zY5DU&*Y-)$0?#XCI;a&iTGjuX;#y9a9%oI88AV`Slu6u?Je4>JAr0RWbgfDxPEd zHk!{dO%wIom~efQxlZXxy$64dqWV4}{0%tS}H>4IrG%3(zKG|h69bvo#J zXn>TVF?*bGURfh5GNRnXCYOr}JVrhUs&5!&s{TG%RK*KnQ-7$HsKk;}#!0sCWDd~pmKXtj}ESQwEof^+@5+dV(H)#(w2wJMVo7yJLq(T1{OqvBDo_AqJR=`~Hp#6aI>89cAtMx<;+yP|`2-?l4ZvY8Dh& zEs@_GG_eOsUO{z7p8u#iyxvs&zPG6Q_u8=j<9h^-cw#Bf>t{@;`*Bg}H_&ZTowySk zvfn%Dq1*3zm_urgQXiF!xkp^{I4Kp47?u0s1=ntd_SA_3IY z^XFAbov5*)-lToMM^xf^5=apGJ7G1H-#E|2c5vPx@K7Jqd~N~vd{#?-oOE2&?_fR< z60t+ZvvHlMkkezdgpmEZ4~N8C#Mr(n^cY{-QkG0z%JQlEO!b8kqJl56*Z|^l2AMj~ z4#xL)NVIaX3BT1-RC6cVj;L(a)i{T`i;7hdJ%JOMvWjv1RgB%AG7W7HGCqG$61%$_ zZxP)jghH!K`loHhHIrIhHo4cYWjG!kdnc`;CR96#E}EfxHVKc>MMK`)&5HTo^N8Q7 zxiq&Cc$P#0wU7}`)IRO<7qY2%;T}?`dCSzVNU28clJl+?S4l0RuQ0ZQ`e&I7YKV9} zi$%BaPcqJk%a(`Zd8QwQR8|jxQHiCu)XHdhnDplc*<&e=}=9 zEj{5{#+oterJ1f}&+|E6CeK_g^_sd%2c+(jL-8Y{Tjm@!E^{fVpP1i+*^=S9qOZ(0 zJE+mh=em-GDGh6cUy0TmOw~!YZ^w)T!}O@x?<&8*lD}q~lslwW1g6a~#W%6WBW8Tj zA!!};I+og`bAjS^%S`ozh^W*nTDgR%DW<0$FqsEei<;1+dQ#`o4sFu4AnP~@l zh-*Lfekr|av6*qXL{#(oA*S&+r^O74N+V)j$uU4vgG1!Ap->uE%rr$8&x)#kI zBISz{X4d!1MP(WHD)&ezNN8Y|W#bNhai^2gKS;@|&RE}833o0J_F#8pGh2-my4 z&8+Y0MHLlyGljm%qMX8a_likp9XPd}*$^ndfxTQ1cyq5QICfObWmZK);RJTUK>QXS zK&XCXjLE-km#Ct9#~CM&2M#jdX2=d{g{O?~xv>IADxaEQX52ePRQV!Cz!3i1Amfnp zp_&KmcHKWpno;nLn3TXyQE5w=oPg3JlT78)g`&zAu*5gQ4||O>ImpjrLAp0Og8pCA z%iL(tJaW4!I59?4?eBA4&yJT`^<2cYm?U+zh(*Ux_~<&5-R-=XTceVV+Qr;#6a$T_ z@KH7_Lw2_s*R5>v;!xB+!`%y>8~v_M`@~~dgs2m4JZaJno)Z;X$!HeJui9xUi3_OG zuZElA-XxZw=~XhM)#}!!xDUzdDF4L~Gpl$MS=SV4z0N1mNbH4Qu;P)rm61`*oW07_ z3IkB6IMl_&-)2$~e05Rdd267kw2K6yP;_98sYx(14zo%(ner<*zfihmGV4EYnamH} zZEAM+7By!t`*y1LW}3OzF{Mhizi6gSULz{9V~LqIodxMJg9&QNbBO5}>I;sl89s~3TjCE zl*o)?!mgjz^Zn~3>j@UFhvWS>84o6dIzzH} zvZ?a7+nUn-ZA6uSy41B_Xd{rI#F|0owKgoThm)ly_Qz6D%@1-lq49l|>p;^ji%jFM zj);mKBVp;-Lgs&5ecEI(V^KBrFE!;S`Gs)WkVb*B=AEYI>nKYtN2TJ`D%W+KjE3&n zb@OEA6lOn~?bO?){Qg{1N}iCaT+dWZ%os5a&NwNnBo>buHB5;_%`Kd*nDfDQ*GGji z2L=DP#H7rnJ&3e5uF#KbMa`^PXDUB9C~Bs++|=x1>Lp@tZZs)G)LeZf#W~Yg()O=6 zp_LuDu4!^z#THtqoIBE#KUXT|tAkRGyyHX7j2%!;Q3DxV)~4#d~c~KU$S4!H$9~sH6Jpo6|qgLP5z6VP-u9`RdB~< zQQ>R$n~HNWF$d2`1cQ;P}lS}<=;8Id1W}?+I3g=cjZ&T_q;)Sz5^Z78=22x22c+W-$RUiAoz5? zX^1Tml|_ueR1K6Y&UcF>w@ypKLR!(Q~3|8PQO4C!RNRcCO@wt`z@-49R|&Cu1M_d??=5*~}_ACMMWR zW?{NBZInz$3yJ4lv7k5hjBSVe%As#Af>~fQNK3~kY$0bvJ)7$v9vpQ#~ z3I3V{b=1E+$Ru)zvLI#d4pa7DhJCg0ZD5L=X{N@X8RvulbR_94HU3j>G6t^_b0>Mh zYVc5#8|)&k7&WFXH!1(&1tEB6v#Eb&pQuEB3F|-Pmq^Nghnuo<%S8F!CiTi3rN$N> z$MAp4u!=fQEWj}Ebe@RWJ?CA+^Cd&wQ*UxBg5o+#jq*#zTfrKT@TEJaDNggr5EFcP zt*FNStZswSPkWirD(;Xd|0j1ZRMzw|4ebg=CH}hBc*EmGh01v*ApLU&vdvLy94s-p zox6!~Ixpk{+(g&}nNxyElkCnaMF)0;)6w!+an`sKQ(Ugn9PiMVlrDxrpll#kGv(G zq&?Jl;h6ExB@q$96{PK;VJTfV)uEF~eC!eBeTqcIr$({<%PhZ1KeAEGKl)3$Sx3E2 za(_;|&M=Dcb9CoDMP}L>myeExN*iYKejgIo32H39Y<$1m#2u2yuxvHWk1<>7F=vtZ z18c=!GDtkBtO0|xZ|Y6{fbpV=7cyjm&;}l}n8uU}BE7QK3KchoYQ??NntpD=ax$WKK4*-aTpa^`x29-jr{y5fyLpn#wA+TSwy^ZB6N? zY@>(D^Q;SuW+EG^^4mJo{Nh$Im5iFI3TDP3vS6R#6bKFy{Y# zI81U{F)pL79Gg`JIdtNj}g}YUs`S5lEaEZ_;k1 z=Y-HAt^{QKj9eq*Y~llS;|C*mayW@_`(!-9$%o8m=w7RZe%CW$J`YPCF&!7lCj0Tp zI^)^YS5)xHQd4lv5mE6`ZB70Wn(WFsLbL<3k8d`?-3$(+b`uX4B<`c3frhsUnV|V~ z_I1NFADa@Ro*s}&H2IBZ6M1q#02Enw5so%YaJ${Lh&n3SHo-dgzgixRJCcW;Ex2qE>`W?pH&_wVE17x0%#7Ea8J--cVEj=?E4W z8o}B^Jx%J>bLh%3MDrV_?IHbsa*OVFC`M%@G2k%jxa4p{avh*X6$xs{cxQ`i>mbQc z?~F6KmzV)d__BddN$S5v=YvZzEpi7QC?Upw0W6lLGi34w3RLDxGZ z444ztC&d5VgrwcnxWH^kWZYYrbb=bgIbz5SA9q#yC0B)WjrS{>X$Y=k(K9p zd`UhQyvMeiP)kr$`o)v3A2>qh1oa8Yz4J5IknxghcwP)4FjcX|6&@^^s$#6kdxNV& zZQvoM-WX=mZXVA1pEolTar0D@apM{?RM5Fs(n{);k~@K4pdKBYw1;|+WX|&??W4wA zo|wqnLz0U6NL+im@Oc->8pQT(s+g_YP`kldLBV43e`iM$Gm@H^{ZKk2hF;20+}*+W zCV7}P!94!6jP)b9xR-H09?GnVq0E>VW@e@z71jKwBc`DhnQutEx8Hd0W=sGfr+Bf1 zkXpbj7FF0fDM(E#sOMHwl^qpT{Wr#S5v(|6oHZmQAU1V_iD&V=K;0eNP4r>5b3l0B zGShV8fT*$wr24{X%=e0#^|#?B^0r6JJM$%?HV-%9_Ps@w&8tspO--KPQZe;M86iR9 zl^!OwsEer3sAl8$UKGEVoU&GAODYJ)aOG8%X?LM-$1|D=OHD zabFZJCX|Li|L&&pjUl2UZ!9s*b@ig0HiJ$1NxFAv`W17(5PJ2DY5eOVcG~0lUw-uv z6WhFxt@c<F>*};%KV#P#05TChQ;toaK?|PbO-ULzMRYOhl6->iGnQx$Jq+zLM{cW>}ynTYV z3R`=*Ht*!E+R59*!ZN5JwxGgS?==;lEfv-D9Kk2Fgi9H&rD$$sv=T*Mt~2%DZ4{N* z#Mz3}3(Y3vW7;LsUnLjFFxvepRx?`;IbV}SZ@6oIjpM8%fy}<%q`lPmB^?&z<*Z`- zFK3nH<@R*t4CeE};(vNQMu>j|d7Aeg6Ysx{x=#7U3m@%z<^7kd=1RY)#Q)7R!Sy1_ zIZetPB3UIS7CXiSm17cLGT+n{I5VZLfC0lslFbmjk@i0ddax-88Y**5;qQBj3iMxV z!XNBrrVIh;U$D$J%BC~b9*r$zzoMBe8bfAHGiq)bY^If-6!XLpnTCk-ZAc=hd2Eky zI@2ao!WnGH(UHqi^EQ)DRL>zMzbE}dl&5Ytg)GT$>dU1NRc~_=qPg~xDS9&~Dt2|) zb&R$qoTe-3LL;z<^hzW~&`Cs{lVwVXkgA66wBM2Vd$IAJB5sIKB5cxsnk+7c>wntD zm>F#c!{m9e`cv$yYCCDFAk>A#s`VTgVO2q4p=Y3X3dEeP7A)?CODWG6;>2*t3<5-ZWHf$TvYAZbtZZpR|lq@brrN4C#tY{ zk_p_xRe|s$>rB%tUH#FE@>^Hj66z7qcGG`1(mx z@iMa=(bU2)3~Cx8Cf1%&RMa~^`lTL;tUmF_b_Is1)od^=IuZyiLI_}kI;yXG(< zx;~Pfy+ZsG2Z;aCwc?#PFNt-4C$GIsonQiqNu# zE!B|dHQ&rW&0aq0J9a-r)xT<7NAjggogL%)fkX#&X@x0xx2+U7T70?D)t_B$&@#2H zDcCwm)bx+of=}&Xr)<@NMo`9e`Ce+jv^UXm1KZX(u$ z8RyTN6y8Gfm*adNjf+hi%#82q#5A%xCQ{y=;M%s2@29`;mNSTAkYqo06y$O~7L@Eq z*@|N#(eH_KWcK%KTo-wNG5zpj6Mc89sFt%EOlh~)qSD@GjS!?Xxzb+E6_xMVYl7br z4?w}FzNX0e)FVYmd84~)J@;zUle(v5zH!22Z8|P0ZSx^B~KK%nNBY(+{(zBckt;UWt~o{Y~l5 zW{N5}H^TL0A5LI=dft>Yj}tZLgCS<_+O9J9|DBV$M~=$eIi)gpb!(X$?jv(w+vUjI z$__I3%_^C@iGSF(OXhALD05$(hb}Vrp9f@a-D#QoC*u7do#A^<%G|&XGwYoboJ82N z-t~5k%u-vrn$joo#SDx{sTxt}${sAG>OO%(@mNRK?-(Fd<4(HLc}gkbKxV=zDOLAf zc0EdbSdBlM6sCq}lWSsBO4WFNhk7{V%3zpYJvd%U9W9Nesj(> zC@7_>4=+N|12T7)N~yYYf~${y4~8Ca4d)lDM~=CM^9WYy<5`rDqBM<9ObIofQZQmQ7lay>qouOoB4D`O*n5wgZ6k%p0lVf<3%^SU14MX4wF*=h>we^5y2$c3)a z{Pk+m5Z9Bryb#>q({;~rDOJBLcHOmCO4X3vu3vYNQgzov*I|DpkLl@4Eerl&V3zP<1aaLeb4O4=j~Z^&nqUzw6}k z_LowXGRZZySW4lPrd;L=n8G)!F;iUGo48DnIl}coXMQk7_i^2QmXi**`&_-JawIXZ zt?SqGcq=gQk}H*;s|M7&9$Us$$Nb;Y$r&y$heO@VD^nAAJJfHFy2f7Mkm8O7F8^35 zRSWrR4KHpXo(Y+hKOGdaZnC5pM#R^hm(ma?v6{9GG^0yf_PLs3QmPhkSXF$otAT%4 zbz@u&L--ui>s%rJA~mhIYXL7x&F7C$bB85ybmt<#|5XKikE2DwG1vTy{0GdQ>8j>X ztCrEO+(lBV@|U^%yEp>K;jC7b16;*Rq*Mj=yNY<>D(AE-zcv3KMQ3>bDM}0Hxbm{3 zR3##==Cx9)!u&8bbDXPk3%>~EzNAyssNLYI=S8ZzBd*4iQmSISHRdukN@nu@m+;rl z;hR-sFISWwtSWe6s%EO|sTESH<`uf0>d5Dq)7dqnx0I?dpR33cR~g^0YWun3hj?pI z<+P$u3tYitQffw1qrR={>BUm2W^6TSW7mj_jMlMuXr1xJ$@4+!>UL&k&IM6U`w~;& zD;ASRPM~spr}zTWL#E-I(PYGqmd3$nT)*uljbvCMla8xux$>+@ z8%55C8oAPSKLcB4A@xG>aiS}yA+3w3QWC{fOAoe6M8#`EO;&rtrO5wd$hDSsf@(PK zN@o;9`9{0aVv?`C3|^~-DX#HLBp>S^p{NU)ubBSRZpQy9TJD)?(tbxC7|P~~7A1GAHWh1*h${a#1CPkx zM?NnaW|Ke;-|st{v{7?7x#md0uS;CR+e?9p9!wfbJywca^)#g`2Z@@t?u2Rie1xdr znOxfcXL2R+7_C^uZuYpIY9}!?-pw#P@;~MTL_^(9GiQHaQNE`0CavtWsPca^w2J&s z+L?xWHZ@1ZAK6_MzTclUX{BUHsWPXWqMU4GdZ?IjX}>A|%?45V`{tX5+3Pq0>-f(# zCM7V6q|;GS`U1}d^)mN!wV039@40KD?oIZIK=kTersaD23##Kh6Lp?jCQ-GRiQ_0; zy2&)YI7C!&T|YD9_!?1ZOF2j2C$HE4E@?Y&_7nd`;sEcpL0J6To6$x}SBx=r8%K+( zpT(9N2(U+>Dm|8OoX|_f^8fkz_qeL6{Er`hWsVsU8JQUoqLHaNMr20j7%7>NLuO_k z;2<0jK@gGq{cyh=K#VaD8KIF8Ii_ZYWMpLIkQtE~k`bAinPcXdV~*oEzvtfc_&nzK z`+XnZKb~jp+u4`3*X4a%Ya67|)tdadQ)!TN{-8`ngy`M1iX@aAD$Zy49I;s52QBp1shSU=4jF$@+ z;Inyy93be_;IqAhbVsuvK6M-9bNT^;9y%(pbT^q;|29o_8oHz=mJg35vuCRuBFYLlU) zLzVXSnnAWRyaFtZyMKopY~%)8N1Eh2=E^DgVQrjENdALX7HCozcZh7KG~XS63=w~CKr7a4;eL6O)3kF^0P>`-t~hV z_L2=!x6UxJtfjqx$Zd^$|C1lf^NUQZ+fH+0Mmq2c3<_SO^g_i(e7lhL&S?|JJrOd< zJj_T}hs`sWEsGInp3Be~?=!OHi1|fHSbXc-h3dlcpXLMno&Y&QBTj-N3RA zp#rSi_nRbKKb0q%s$Ws|DBb~&IVadPBwA;kS>FQD@O+DXv4YOrtDe$CXQFB zYEXL7+oY-wNf?UWnPp=Ad>x(5I#~wJn50kal|jXqh;$HJLqi9JH!d=;E8Tnk@AQ%O zDX)>?SCDisvO47X95k_%TK&2a3nHr z#Kb}BP*z#nAmy}>khkf)Nz#2g_#YPaA4d#wVzDfcb>5r!KjY{8Zj*v{TV?Y8FhVb2 zPp(Pju%j|aU(sTcRYvz}P)_87LFsgpyjKWJfh50b6U(>#8pKA*bS@w5H%YzX$9Mrh zt@!#3^Ud*7eu^xDs-M;la&o$=Aoet(H{@*`KF9{<3WX%5Rr|ia$s?MNV8T`xv5c}q3lgeR?2Z8hzqfIKu zGo~NXzh__qIF6q;DYz0wVMQHNuu1NPXc;7REi|zlOOnZV*n}YO0|tiVEJBy*ok1XK;FwtAPqH(m~akKD(VJtOlQ;!&d0!@K^_ZNCRFCEGs(#B zlR?#0ohC{92|5JJHy(rZQ`jKyrC^hqg%@OyQl4&NPpRB2gUs2Z2AMNnnNYMP+QjkS zIvFJWt<}VGoZide2byEZYhpk;)I95El2XZ33y>Lj%%o~az6_G~?=!I+<-Z2sjW)1T zumCg_26 z=>Oj60Vcyqk(>s|5rZE$ft?8kUtwYisJWKN2eAA=sfN6!112@s&R{#=@`zwY>#*aB zid+m`tkaZQ7qN{rd?w&G3awMr5P}9KqjELc08v^GW|8A9pCnz`nm* zIk0NpnL(a7rBwz&{U$koqwhBO=!(gz$1zeE%tb~tm@~m7wLMz~r6t6FL)mNXgS4Pm zLe9JV-=KYuN#TtLX?_pNUg*9?1~vcb8|2D5)j-+nGk)hXDQqUf!Qij?CdG><%b@1b zev{;S%rgcrB$?FAp$&j#$BBwH_#we0r)xka`z|YI-(@>bqd^`UuT@~lx%fL}q-C90lu7k|;ks8J|;<1m_P)o+uckuXVNf1#(l{3P_|?1Aa7BQ40d>%P%K08IVD8FXkC2|05wc zQ2Z9LiE!6f6O!jO8t{})2!+J6d6s!ol@ zMuTv8+YFPWi5}Q!V8U9HwEKEw5Eo5|9%P^FHi>$O=6QxE*}c%j+I(IHrT3gL$?rTX zld@dpLrx>zIg~`%nX^3#wMfYCP(C}+r1TVqW=O90Gl{=ylng8m3=SrU;toXdEg>dJ zcOr5@)rKL1G`gtD;3d{gN=RWNotVJ}$_%8~KPI*lYJR1ag366ZI1vBs6qA)$H3x|y zjZu{|-K6F&Ix8q|T4a)6c7Z3mpsF8{fFNG=gIu+q8(*)o6WAD`kO)Zw$2TKQ?2dj` zpynysaj4?r2Fas*OdQEUGFX+^Xp-{jY8jNyqW(hE^e&}k5~g90!!jg|A8Jxk>m>tg zuE!ubEwV!RhF+8Sj1ugB870bj3(K@YD~%A?yb?^TSr`!vve6O2c6*6QIN5BF)<|Fq zBrN9>Y!IKGV3PB;iwvweqXx;Q4*}cl7fr%9Fe3(}r`ePENm9n`%;5kD%b8dP;?wzn zDCE4|Vq(p`!V?(KA%V^7m`V6Xtm2U28D^5!QYVvFFDnf)Mz1$XbBmEd0&X}1Yi8ph z_AKmjV7r}82ErTbOwz9JmqAMLT9dS@VKQkM%?039B3mFKuGJ(y?Fhz;Bg)wsV`9xa zp+QnfQ)L@N4+!BK8Fm9X(c?|*3GoNHBV_opDT9=tzd`t>$tJmdZ8At}Y%)ntV}cpT z@H}IZ=60MXV^m{wv&o92eKN>tJz-)k;r)YcY==qo$BPu*MI3n78AX5GVP}D6bic16 z-`Qtk`4SlbY)#37T-qcXM1GKKVtt(^6f7kbCXrkA${@O*xM8rqzR|=|iW(1*II;}F z*D$gktj}C9v5mCJHqwr2l;dtz1#%8g$!lFE*43^u zu=!yBF@CK3!%Zx`*)oXSn`mNfrL==(1GWK(+-}^I2Nz{FOR!q@nb>aTX~4Q6!o(6! zPC;Z#vPsm8%ZmC_tfJrTRTQHsqC$ccH8ns{kGnDd+Z;q?8?oN+H7d%Ipy+PqgR{`x z&Y_^ZH(62lb@NqRoK0XUxnyG7kdN^ZE>1GBl#r>uwzsM85Ovjd6H6b> zw#j@_IBe&Shx=uF<@6wzDXCyd=r*x6x*=4;1>{1owD2dey_`A7zmOlnYNt+vtqrRv zL|xrxV$F}{T}QKxn}w*W>8QZ6agB-1zL7gL_!mzCmYou?bsC| z1>N6ZtuON5T3^NfvuBVCxZ9xSB7+DG{+T?;WtL4&kisvWCaXFxV#B@2F(*w*(&pi+ zou^g(wn2_y>xcLwJ56$4=#xR!k6k9Y=j{uWdmhdPn5^8%0CI>w!wfbCzu=sL?6PSl zs}B0eAoibgOyb^SN-an%nPyUI87_m=L+4BiZ)uQ0>A$88a@s?skoqNFHv{{Z%yb7? z>yDbN>>MeB!p2OK;xkMr1%(eG-9p?G^G%ZadSp=YQkhBBX{;y)e?MzdIL0A^nh0-` z!n-HPVC9Zzlad!0t^@Wse#f}J1#_Ce+l zKwvP98F9gqchsbGRydLlbA5fqC$k~0%h2U5Pe}xI? zA-8XuN&35)GAMk{#iS%+81diy6m}$;)I5#03Te~n`yr*4F$A|L;>$h^&3%e{YOzUCRkI9o-kNKYIfIdKP&GXjCZ;O>+@3*xU8s17Zl9&--DS*# zK~}ySt>^=t^j?RYFW)iyUZ-oQ<>vA^qppUb@CO(M*X)`zYWOn^&VgCaPIZ31WB9#S z1vuw_JAaz&wUZyTJ`GV%He|8y_3x zy#3y=Yn+jfaIv#~ZZ6LG**6X!5*+Lt5$ZeIS^wu7M>sbI-#EtEapU;w|L=gIyV$nv zD(B9^8GkJIUT`D0@A6)7)8tg=jP79n@_~If?HbrO@`?XA4~NaZ(Ya!Jpvz59J@RP4 z;t)Oj@V$SwEm#`!c&Z~|Gj&vprdGy+A{yezXxv}%+G0xzRZobC3@xOl&u;7%(+`(hEei4+g>;1ob{2cZ_yL;x|#*5_?yY6}Xw!Lrv&z?7~+!i?a$8Z08 z+nm9Zv-H5S|2t-+^U2TeH;);!Yr`_nh)MsqXR+}|vbE0h_dotp=lMk7|Lq>>Tyogc z{G+!s;;^TW(|646f#%Y#`F);#bN=VRmEP0tbVe-m9Alhusd*R9MDJ;Ho!z-!?#``& z58mZG`|Q|Tjit%Xh*!s4?{s-LC3M$D@7woHHczvzBih2h?&~J!lTBmh44!tT z%Zj@O|1-GM=XvL@xL3yf$@hPbUVUiHxc_?!FXy(yLD9y~Z0D!BUNOkGud=l?$Y<~>gG+s$<96j;?H%yI|6C=(b;Yc~qgnd>IR=;dJnwS` z&+vY5UE=(woCQ-K8oH}$hPNf>fBxIu=6%Qi+~Gi9P|U8++PrU1bS53SW$3Qcca4p4 zclr;r-tOE`8|b<#AbxDtZO&zv!`z+Q>jI}5Kez1KI(_U?U+3{MKM&{DyT;z++&1Et zTb*y*HP+R+?FBzi=h^5ve>8rsGgfbL7F=`7AB^Mv%f^23ig`o4v60R( z!&mqZK8ts6kk#pX_qgfh`|chGckJ4Cx6exxuU?oO=e#%NS^pt(=Q>wC?&I#K1l`E5@ z;}ZGzQ=|PSIN!h9f0Xm9l1bP7zaDbiF5l8gGrULsKb&T%^SNEIW1VMSoph%&_%F|1 z!V|H=O#=ff_an|PFeb+UQJh~+Kkw=1^Gkd1rvFm95-M%@yk}lmn zexCE`4ORFm0;8x3_nM%Nx;B z=X{F>7FaZ5p+(*wCn*0$n=YOR6S}6{c7&?`OeAK|NHyB5n*MyaW{u_(8Q9ra`I?hq6L-)lgabLO4eN?UvpDG1SjnnYkl6Cfcja`ZNmMZaljZXWP zDi%)uTBEk#IO(t`4c}%_^}Af?z65P_O;+#vQZ2qSR>yr}wK3kIaA5BPkZufmIrFpyscIX^J;ajonzi(UsbJ!R@W+EJ^Np%)s^~M_1n2i z|4n2Qf6$&?Rx5XywyRd1t+m?oB`5hTUk3<0$|gNpTdQd3T~n(N zSa;N+)h`ul<|A>M8kVC2$7+@MKG!I(RUbDK{UbNadFsA%Xu888`}udXJXl3N42 zth(~D1zT>E&VUcGVdtIUe8Gb4Z5AzdjZzQH_>$Li*dhNtRy)Cc7R}uksm%-oy70b5 z!F#PLA)WtDq-MTnQAvkY-R%}WjT9+2w)cHtRoxzodRX_In6C?4s&si>mCnu0(eBwb z^10nE-?R*Qa*T~*b2BoOkeR{9=~5JPJVpMP+&3=-&V9DSZq)&MwvO(0=eXA!tvbp620JT0e+}1~t1`54 zAYI8vqP3d!0n$aA!{tKi|5CW>o{!d)G12M?iqd&P7G*6 zH`r80SnY_HY`Q`k!4qBKWG%%OwHI2ny~rY87|(hj>vOhHC^y)Yu-m4Yv?1=aAzjfm z@@*>7K&n*<5Z(~3_E}k)$$*m`x7f4Py(eG(&(~_br%hpLR=KBJwV#7V-JhWr*qLEf z3$I`%Z9?nU+|-+^&g$Hjbix4r?q_EA_aGdOYEn zL%vlGjU)>zUaQq5vbXgc+6J<7;1ja?I430Q=TSvHXw>HJN>|s>QtckeEPWxB3U^D_ zWS2ZOU7M%qUrUw$aHdXwy-N1o>#Ujt-LKO~Jjat#2D(VQ>#SM`fqz^f*TV_Q{+RLr zwt!NV?61{j7{dDKE?PJ6`ct|_adOA-Je{FQ56&%B$Rp%dlvUpA!gcC~CvO?X56YT2egdJ29zW|3uQ3Jw1Wb`T3WGyF5_oFOuqF$#}b0DUkcld%;=ScUz zwL%NNN|4{FTJ3~m7i-i_;hgnTt!Dh4ZLpi=`V?|Cl@<@YS+-rOQBhv0CV!u#E7R>Y z%3Vwh&%bMQj1v#6x5@?`J6CArkpzYPt48C7WN5;-)L;HMEWcFS`D4RFHN-#I)%Ltq z4SflkL%N$M3#6>{P=2;PR;9qXRT}udT)D@~b>RItwQbMQtZ5nAaeJ~7XJ>2o;wrh? zKdM#w)C@e-vC6+#pfevuYcW;P?{CrC1YOk817AjKYA^NnaI}tsD{N#v$xCi`6K zZPC99bRJ?Z6=>Y4RJs0lxyJpJswQyVnk@h0NgDn&t>F=iLON-7Nq2lgZhaW3WBo}Q z9~z|te~;IW`Bp};(DI!~lH1T#I!_06`aqmUQwDY*E3E%dzShz5t)o1QxRS4gAH(eO zWDHK%lZ9%!mpV@*dl^E;ocqGHD7a9Qd~4LTDqUemLe>4JaLwa5AC5bgoUWr^g=zuY z4scu($IWNkmidM1eKuQum(p~IPHJz9RYzW_lEbe?Zm(9!?YQ1Yw16t@JWrLpNYnirqSpn46;dzOV_5e7Cql<Tnj1bIH*9=kiqWO_hfB7O8ayV%3K> z<^IE_wI^*_^OH@R#!}xWM9J&cD4o8We*YVrd`8kaeQwjRgEj@tOVe8Sa^AmtxteY) z*LY|eSuRgldsDewVEfcq`NN+3Vl@l)Ok*9k-yf^-kolEE=itz9u?oHztBy^DI@4aJ zZ1A~Ymv@{^TmE2E@5~Sd&j^u?wECu8UHosMlA!Z~eWfm3bZGuRR;p)xjym5cl)i@_ z3U%zZCe^j;PD?iB|4b32O{O&9jVyA+cfSwn@*E@ z9a_0d>6;z&Dj4+A(O}0wffrv1z2qAbPLg>>qE5JHAHQs{-kr+7IM4km-m+=Y zPf1!$A?u|e4jor0mtTssk%E|c&ZaXk3$4_oI@YJXTBt?} zFvn8;aYW^xc{+rG%SVgV-fUC<$t1P4qY3dkVs;nH$Ok)7f9q7d)fT|G4XOWN|Z9%jU^4 zRqi|o`*5IV51q|tkxJ)%AEWep{ijUzm&?>}rA*$?#JU^n2mTnVAlNsV+5_!($0`uI zCb1p*sVy!?3$%%9I^&U01q6hu>)}v!2G~Qj{n=cNhvVcxZ(5Gdyvp~7pUM%oQB4>| zBLs~s2l>*#+!Kpjn5gwbX{ey#YH9+k8&a-7_LZGQ3jWci=<~D<$EYErD14KmG}k*y z>sxG^@}5n8&5Rj~uo0gViu_j(ruljjW?iWys>bHokX1Nqa)EE<=>BDqd4*Q7s{tN)R5xzDfEXhLIj2f+f8uSLcgz`Fv&x-6Z5cSfi801qhV|I>!^&AJ3P^61#eF zvHIO;*RY%N5in^l1`2d(Ke=)b9n+M2wH(dY1UNGeo$q|I&Yww^{*f%Nrz#aOt6Xb% zsI5Fy3+pFXAN5eVrp_$a(8@TuR@md1Pb*FfW;>LfR;^L9igf-^l{PjZhzw8Cgy|*J z;Swc}DN&zSi8_O8G#RdZOisY~2jkS(Uag{Sl>82x`hJPjA&&y>OO97-LA+eI#H%RE zrgcA~?fgbJu4b4#5U!&)FV(_PODSwiwK_CHL&75DK^o|cQ5$rx#Ql30fv+8KS3oszeyw!%WAzC}5 zESd?6U$mC{IwGP{!H=@PHYv-!LX_`Zn< zJ{;9-dV*XZN>I-Y_GC?7ov+^UY1;8V((YYV^wqJNoFA(>4W-%xNss5~!j}%6B2Dad zsDrwE`uj+^gvIH==x|lPPSu5@+3DKhQmM7I`I>P@h1PSC0xlAhlCPkdja8O?Fj}EzsKL0?mB4 zKpXqZHMt{ITAr`1Oe)jJ6LoH(*SkUw$g9fb0fzh>sq@_2&bmT%PeJ0{TBtpc9%<8# zH)vzFhH4h+72j~#_dHOkEq5m9*iuS4fApe&B=Bx8H^l1DSEV}p3vIbavd$b$QEW`2 z{QN7`%n43$?7=P6Z8-kdP_5=<3v<#n;krr2} zi#UI8rJ4@KtL>vwyUuY}1GB@VXTlXr+Pu^u*G=Wx@^!hU@k$(-l}b#{P)P%Exqh7F zt60^?AlDs@R`bX(9XgyM@2#0?|ARxPAJ3HME0yxRo3X#S7A5}8qD__9fG|p3e8MV4 z#;XEtY2j<(I=!6z%k35&Z?r14EK#QdYIMFdQNg!x0*s5NdrP(N4g||U$^*e4WaMq!L}!6?~&FUlz;zItYrCUjBDW~6J% zI_!d9VO2YTB3gntZpV<=REhDS59Ol>Q(IxJlIqcBotR5XYqhxyZ59LMmL?jHf?DO; z(fe~SLc%bto!hToEpKSvyjtU~i`V`a5I9QXbUMzW)2~J9_%e%P;N(kIg>@9G?|s^q z%KILjAfeR6)0f zYN1D{4vt18W4V{*W4O_m&&|~t7;#m(@)0`bjw{l^O(|*)&e8C1B2^7*`XlA{8q)K* zl?w8T(xUP7|9e^J9*>xP#wOPvumO^;Bket4)4We@Ix@Ua3pUslVx{FPqkA0}DtGTt zd5;ZMGmIP)s(RL|Nhh#x^NlE=PtdspaZ_;Sape6zhpM?T7rJTxzoW1qL7hUT7&X>j zsPXjI1;5zjeZoe!iEv1IU`&)2-i1Iy|2>-i`^vY}_wOQAauivge%$2fi>a zb=$P?T1+)h=Frs^s&AuRC&HPnyaLUd|Ha-Cs-97yYP*@-Bkdd+s_88IK8l)WpOdT2 zECi5tjmeM$5&PnwD>a`kcof;SfB}Zp?j>3n#xPs#!@c()+x;4)V&zYm+BH7OM*2*6{I`rW90KfjAoL0(6o-9 zg(QV&)oi4Tk*F-WnnW6Y$)N@5Im&NN(ZQ#3wB_1zwYrpR`gP^3nOi~fzRVo5T!P#UjN8s3xXtfp5%Izom4@9d89OFQmI$BtyHB*ap z8EI+%d(~vGup=a_MO3OgP6&ei0qrz%&OcVs9V zIj#(8<_gPG7gVYd>7^a%Ww)_Bt4Ln6i?lzoOv9M#;Sxef&<8dJpQRc9xrhd)Km|xs zi5MqF{E)ACH(;bdk}5!wT7x7t8vW5eDJx#uO(0;_Sh&4G%e?CWzt8=vT zFFA6n&5_UA94-9Cp|$^D9M>6#wx4yVAhbp?yK=ON8Lg`4^W~by(=>l*f)@WFL5E1Y zN#|XYpuLd%UNHh|lD4`LKI?NhPN`30wS*m)hH0O^|Iy8kgfa-Se^BnEzr{sQ< zBVX_u$kF0I)4IX>cgy68wQKzkNlKlZ!62~|b;V;Z`csyApFlJEB3+B$OvlcTm*r%t zJY#ISL^U2=8lu+X5H;INLNp!%YVx&zT!rfYTc%NPjHepM)2;i>p({T-G?ORvVL6|t zU(3^SvyUqw;igLXGyPUcE#~a0aeCv{VT*mg+Q&FN{zfv=u~X z{ChE43vKN&a`gz)q+7$(01GzK?r+G|0JN^jQ{zo^ztHn(jut_{7dhH@Fh|EvC!v(` z{!7;6Yi$WK+F@+^FtZPTz}kGx-&3JZnDIWZg(o_}6HOgksot9_b!t(T)>96akHv~P zuSl_5amkT$7nlz&gwjpGjT+8HD&f5_oq~()VcM7wF82zD&OhPM(Mc#I-&Y{+jjB}A zGg%0SxI+Wd6}%%|XELiab4!^Tr^l)8u0pl6=IY?hdGaGY{~vVzA4_%2xL_TE=A#%a z@=>#v;VHQzROi7RyxhYz^e=pRi?Xw@wL(MYJG6e9Lz|l_ROgeVz;G<08|eQh?8Q{} zT!~zktx_T(QWxnutLf>^ypgYtRJ0U`{RO|^_odqVU8(%}@ZYp!jM2TNS{H^^>C!Ky znqst;@K*-(tYL2@7tK~VoNU1($O8x}5&KK1G zu4=^Z6lNud^JlOF9V^u=F0|zre01N%>g=d$Wpkl?F60)Ot*(qLHIOdif*YqM$ejz# z<3fo$kff~+`Ej8@F0}5NBAvOTOsDr_lsrgZ!F5W8(?MMyuJI@-t}LfNjfu5l0p3Y) zgJgH)fPaUn=@P9R49y9b&-=OBgvxyJnhcy0m70#k-1vN+{4Zm89KusvXH~t6RcrIZ zHT+?!7>!s9jn|AoheqHF8oe%0TR1jgD5~5lYD`$Q>SkgU$;4J@MGJEMx7nT;tV^@K;ew#0sE6Y{4AA{5<7^XlJ zu1k+QlpDnRMuoQ_)*p*5(N5I&y?d~Hzh9=gi?h^h$&$*LK0ojVs>Y2~n&n=l5%(7< z_~|lrEhv*8M4$*0~aj5t$LKk2(WKLbClQ0~@UdJ^vA>6KUNn|ff#_Dl|9&7!LbQU<7{dl?y zU6|K+x`L0(6+73Vbe`-CsVlF+yM_LNMkko3n#xmobd;$V6WzgQX|#B{)gja>y5RE# zMXIRhfu1T;8_aqKDX2CNZ)lb34%(~K;DZd0{J&?xN*x@Vq==sjbsUv@%4wR+dzQ-= zOLh;kpg(AsdkZ%DQ^@EL@OM0#5cY*tvmQ>+q(=)i^=!Ph5dF|rnx&yD z@Q@|oOosCaBK_EKt{`l*UXPZH5!-Po2ftCIM)y={4%_mh(p7hLrAD)T_|QtsJe3*| zhkl7IdH-X4T$FXYqqa;#;q24X3?W0S7a6WTHbQqat(; zl5dI7_NQXxy&y(SF!?W$S`Y1YkqZBOnY!Uj&oaf{Q>HUh$~64ZYPEi}Qhh(*tVqt3 z`zMu3xP6HRZpXf3^CHU@E!D7Rm&yT&FGlDnTwWi6Lpeqx`eHPR^x)x0&B3#gc?OTh z*;=KJ3DXG(%ECnB4AG3=mZ|=41&a8(O8rNwbnF8L7r?Yt9e55jpd zwL~LlmdJ0K9TVDZc8z?7J{lsd^je{4s0-p0F`jQX24w5<@DeTl`zkHwr2QR5I#h|S zcte`9FW{&+!iiB-8i&TpH6~XhW3hseI+kJ3B3xm?q?^878lQ&yzK8L7JxDYFESF3@!X9LvCwmu<9!1^I?YiSzpKcUe*u(yFw@H z<7Gd}34PZkYHjCAS}Oud7|FKzWTYz2E|dFNL@4@in|p<(j3d~)GhbehXK3JC>^DE< zDyWyzpO}SRAWI1g9a{X4GR6E%HSp{>a5~W&(p6`|mZn_! zH(~#4dzsb^_R?=pz^PO}s!HRaek5kNo2%qb>PZ@c7}ot6l1opHI=YenNav8wW!t{q z9D+({_ep&Zv7hBu`uSFt!+uUu(3vFlkY1##cPYia_f-u*t-3u-a#us)nu zxqd|!CY~&XJ&lq3%Xl3*Tc%T|(f_8n5t;BKRpMlZ_WqEe#V0c4PkOllKhM|M@=2n* z9nM&bH!76*VXTH9PgBHAI!( z45JIRxdkg(22DN8V_Nl~>uK7j@%gk)76MQnI$g^(6Sfi z)I(`%s~{>0g>>~vhYsFvPe%boS>Vp+a_0fz7Wpl)=wK)jPGJNeSu9Elv1r`07L8hr z_xl-wO%_=+`l)DD!1mXPW`ct)QOs%{ty9CJl?`F6pLh*D53XFpLZE5nxUf$a*%>DGi8)l4P+hfe4Wma<3a zXL4-3{|!szzj2B7z=f}tYWWeIhA{GW8X?%|iR>1#OnafvvP@n>;?*}L5!DPg49k0i zsx;$?DtXfcm(bLD)6_1c)oh=irjp=FwYgQuh1PQ>t>?v8%CrVAS|Sg*u^9{7cXq_( zW1$*{+P#s~8#P?tg=+82aLujGRRXGbKWW84hP-D`Kp!qwGifL3XnX`6WbHK6Z=WCI zG~z_5ywL|;KIFR>_zSNA)web@X0`Dqh7+>x%q0=Sx)Y11Yk7m7*ku z#U|e8P{J;&CiBPjoOCLGJitj8^T!bW*jyd1i0gRQhf)waQ?#g${~lP)SBWsOB@zYm zLby(_zmxr*oVTC-r`Ugz{inI$KCb8fX^Kv8z4M>0#{SC%{i;`~rD~OWK497tw4iJh z&w0^#S~Rgne#ckpmm8i%0E+KhwJO<3xGeV!9SAMZ{#>o>^Z6Nxk~waAoW`}{Qiq@qYI)jP&E3n>zhA5Utov-^PYA1X$*n6t zKpUOVJ8UE1sP{XXYy!|ih$A^dJjs6INaoRq*^nuw52>rXZ%;wTRO27mA{Os>~p=OaBy!?W}AOa&v9 z&U(zIt^%99ZjR7u7=eH~XFhfTn1PVG|G7vcphztyz4+NOEk`gdBb`A{+wiPCM@5V1 zr=P*v(a(FmE*rmJwp?K5K(^ZcxlE&<%~3e}duYirza|)gV+yXx))46UhLD?eVQPmx z&xh&AQerx{l=bVHVgJ&~c_UoqX&!37}1W*hpSOG}>C?V!-S zm8`DTWE~*AyfayA-)0-@HkN%o%GCu6y$B+?jlcs>sD}@TVG`<4?Wo`H;}<5jqVCUJ-=I z#b|;hMlIm6p8f!~ynvF?w@e4%%;9Cq+>3AtF^S=7O~jVF$)I2>Isjt(bD-aMfnPuIRLR|Q1OEu0po>^E2H2r+;=(X4~s zD%PnZxaYg@j`P`N+MjVq6luF$=)8V-LTj}KqG{0i`Kzy z(RNLF6F(lrT0%4~Bm`4BA(%07+D<9GoL8((g(#qJ6szI+VqM-)%#=CBnp;~ekA`CH zf2~+eRVXkKyk81%7X^4SKEU-Dv->H?brj_FoHOFuRPDGYM9D|-8!wNOS5Jy&1SH8X z4gD|EJy#viX3FEuN*(Rb#EXHV(c{qQZ6(^XszwREA!;NhCg^auI$&-e&chq9aEw^0 zQ?UIRjFF2XG@Uf$xfu1pu{AN8&IQXJ50%4%aPFiyO*%+7oRXydEp~Z@=E}F4Pj%Xl zSE6QRYFuEBg1*4AF;Jq*8*4N(C{+G`LiLJRqFxA#T%wWd(U8IY#ibk

tfEbGc~q=XAGRbS4*F7m};Ss!SdFzEVZMWU6^K_P+xM9V+{# zM5$bK^<3_DMygJQFHyu2Y6R5RFV%<_mTEoJ_eaQ$3wo2zyA=xt92&h$i@BgrH|@n0 zVuusr2slsC=1|FH+<}z3=&nhK4%7 z|0A-N`W{GquYVN1@Q_1iR}fQ5-QV<8jV|y%w=&wAU+oB;zb;V$Z9vErj0_M)8xWop zsa`m-GLkNKnRY|h8_U$uK^yf<-EFB(KoSMYpAQLahmNPQfYiolF@-3G zG=dAdth6ZM^+=7_i^`RUKKMkwGO1P@8qoP$lmaeBY5xTRj#!@iUX=DhSY@=1 zfNxF|vSyTaOpQ|FQ5+CM@c&<;s;$c}R$x)Fw6$1^))lL5W3eWc73&1mY&X?xcT2Hm zRFkG>s_3&ywVtF9eOf}SI3YWnC}={ej_)NdG4`nO*0UV4ovj`5$Le9hR@HugOIhbZ{k448%(Y_Y+KGNXV%XQw0U2vO&xG!Rd zFQHfrNt5j~BivjHxFZ-4!Y*OwqZDG!;Z(v~m(7I&rE6QibMUPk`&?0yS_w zyBl{p>edWKx1?(**?eJZsfO_Mn=!9!8WyVwX_!p>`5t3q%1IXL!@DVE4U_5Wb9bohO{%>u;;&g)Q)cwNUHB3gx@EK<*3CxEF+~ zZb2x$($n--u=Odt-*k(cthw@nBgc_oT+$VCJYAVzV2Jn-sI=W35%l3rZv1@r(a3a&gE%JD$nP0EBRXgMw+&AObHjf zcul2_jlw!Qtx~c7z?@4ELcSBtX&oKbIfqW(%XT8Yx1wlplSlF8`M!n%i&$0S$kgs* z)Sfe$YP964s3S)u{Uu7=fb{$*|9L1?qr+(P!Oe=X>-nYfTenngc7FDK#SI*ZU^El1 zl~K!d0XaL%#2(_gb}$80}L?SMqq|vxDRMV{>;cVBO^mIG9oi0GGfil$aT$J zBQqm1LL@_U>G$!E;|r+6%zOEM&pFTK^mwh*0LL5~I^f)7jefv<)*+h$I|_7Us8j{l zk{Qv;N$VlG-CivBL!6yEsuX!$z83kFs_iH8zgS+x#mJ++>kO#W3_3-)Karq3VwBiY zwMyRAY)%~abtNkBUu3!*{mv}cmfx1Efnyhl+5UJS8`82xbIfW=vPl=$sOtdLGc|-e zHH5vnL?`R1C8#0xJ83}FQcJvSE77s7CGw<*@O_Hu6R%g&(aKXtqf=3dHS*;bgq)*O z^zPeMSfOw_WfL}hZcOj{`f)$@oWS{_u+ z6(5;Fs{XWT9%XaaXFN9H)a6vY{WD-ZQ}squ^>+7?zwsZdUb1Mnk3lmg8`Mk;JV$1{ zj8cn;`oC2=K%7|*5c%&!jiKW8=eQ*_QnimqBEdt1NcZE+qh^`tIgIr#&_=`#E(1*U zkSOlT_bTQ0J=dhgsWX-uP2@lAbhqgI$!I0~7_DAn=j3?#PKnnRB6O8Ot;7+7L7uO0 zvl8nYu*Zv!(<#EdgKUX7EW_kU=;%DPgG1*HrlRMJY zQlgHHeEoWfBCARi%H6tUQ;F){D$#iE*4RaGz<;Lc)KR4=#Ns|^7x~3HHn&F68?x2C zp+a+rIv%r`{w%pXX1zR`2YJ-ypGH~Bo0z-aqR8tFFrN*I@G{7jvnWAl2+NZR8tz?5$&`B$-I1m^oo}N4_vDM(!>f_Rt)_tt{POBb zwo$95|7cOiG05Uql0^O!M604wEz?Ze?+;Jt8+!WJM(NVy(F)+S9^wsEl~Ba&dbP}{;^MyP$v!9Q)a!DSq)R1?sb{AI4|Jx*;?net!nX7fc?G;sU0dLCHjD?k| zErK6%&Z(Bx8ZG0sXDsJQ*%YG|VgX=B?9q5OsCZevjaQv*GBq6t$9RsN5#;;J365@K zfk}yg>tHsGi&Ex7T5!C<`sb-~yKLJ3%4Jt_3Qcz?)+2fHaL-ZP=^VPD;K=u6YvR4x z+7!SW{jfrN*c)=Lt&oQgOdHO?2xp*~*X`yE*tWgPqOyzUnDFS2mzB`(@j4Lz`ShMu zGICsyMomB*NCgvK6sJ03^d9E^&IZ+bGEP;*#H&#?{0BAcO4j{P)+p?|0-2ZOX;)Jv z49Fs#Y@*CdsgaX^w_!L-m-xHjH!E4EX%giTPCAwi*FO|!W*GGI-z(KVbGrI@Qrtc$<+7&BxB}wR ztYq!yHJ27(Mo~hu+n%i6VjKH7KUmK(vN&1m9LXBT*GI0Z&|y%{vY+AYWI;geBIo~{ z{2wiM(HVr}Rco}Z8cFuPe2p&WQM|#fJy*b_*ohYC&LR!|1nc!LC^`^L_w$QKHm--_j_c51cd2#U5R(GhQ%Tkk@U#&CV3U3i+bf zo3=DhN!u#b%Le6mI8}3>Kn1x8(a|e76Taz`n~92+*9yKs?eH143!Tvtay;v3oQ4Sd zU!W@?&~XSi!re~&SHvF`Hn!TGE3{-b`#=OJ#-}h{c}5TO3+$iND*UG$EuBRJ5?TJD zSMp^4gS3k`9+^QiVJf@f#3Y?>qvAPRD({myvQMj2QQZm+5FSM9`^DO|3;b|Or3QV# z|9&OmZH`sM>`0pu?xA5ooT1Iu`+b3W2T(2YAEuH*PlBoDorV~3PO|n{illMXI)+cc zdVY5DW<&+NpqUrk>xZ6adWDXys#3!j&}@Tj>Yi>@6So!Ay-(<0enOhZ_I6E#Fjk!B+Mu+969 zMPrgp8&4Lg9fGibCoS|21H6HW2{7j3*^=Y=i{n?I=Q>2e zFez3&-*MWBS)BGB|7yh%9lMJ(opdAlwVai4YOBHOP8YZTtQGyX(li`dK zjp&GG*hs^7@aBl&x3iT%Oy8ER1H?qzu58s2-p$$CKxDpDq4Pw->Lm3O!;>hvZq5b? z&z9%ZZ0-4p0<^bWC*Px^*;=KZ)mA0&>7w}F$oG40N4__`T#;X*{Uhe^eK_BHznibk zM4TNMmWT@|2g=Xn`p4z#z*2JZGra2-R7=FPcd=i13`Tosw)_aAJy%-`Xr1k`YUdWK z*1eP^9{?+TZPDWIv*dh?=2QqRRgUK802gklfWB3s#Z!5mmn%S6zy{un(gq@;mE18U zS|c>E)J*=@blS$_N6+@15_ypQq&1ePsj@^{Uno%^ecjOx`uRS{^R9wubX^YR6t*iv z9LpdPZ{$pHw7(1zHlb8w{sSxGeI8qfMaJjj6x}byQI4^0UPhsOw&0ugE5K8|43-$d_wFmF%`3 zEIeu!1SaL`smoV^k>@@cFMtiv8q9{EKmbGdEDONx&II# zYM@xg_h?q1q&?@t^`LsW!ie*OYqWDa$mbERyN$MOb*{{X%Vh}%uuek%zkRuErX5J? z=z{e>!QDKzf);6}EO!7XK9sFX9wd{0anrqDAqM9usEsbhH4u~kSfe2p88a`C_U#Jf zH7nFJAKA?n**fuSxenLm$n$v&NW56-h{o$FP}k;Y(=&LD5Ph}mGo_%cA63~vtWz}n zPPtm%E0%>N(YMpir-Su=L#+0X+O(t1F8>eg%Hs?~meU=hyVd_&xvVf>8b9H#=LtD+ ziR;fVh`XT@wG0|Dj(aNTdX$rp5L?PtYI7q3wPOXE?+1Ro;WFiiMn;E?uE&^S1y8Kh zx;I$yw(`s#o(g#*5Fc6O*qT_zdN6Mj194OH2vFLlkc{4Y_3-Hg?(&s=o z7SicJCuoXhk_8`N!4lArrxBYGZhYdC{67yq)L1V>EE}wv_&+daTRGkizgl&Ey;b8c zTIKo}HN$6YG8|`doPGqO5Tfi2lyL1lyKh#>_cOb~13}K{lpc5|MUhDJx_Ar^jmcAw zdmbJSx!U1Ttj6*+8jB&36%j($JJ_=BRtzMp=w>Fg>$*K_hD3UIWAJfI;|?&1IXM)!+8>S z{r#f3-e^s|7| zH-YWYJn;E?mHY~93cJ^(c|X&f*t9~sURj|aq9L0PLR6fgkKAgL&rFI`3vVoo#D-`9 zvWdGuL+ighzP4JIc1=bDM6CCTln-IP3InN^lC|lkYHgc@#}5&3bG6RQsMfxpX(snV zsr;o_3$Ept{0lZjx=qGATo4$c-y|Tfk6$4J;kmj%oqUMA9X6f#8}yAmQMlU4EK>pbLfC&-%6(|L>duk<-pX}N zChh*6ys@7rgIMYYv2ZUK!tYq~^Z)lwp{q`K?uVSf8SCL}4Rf{%hQSUd*vim$u`8{O zl6MUm3enF^t3b5&~n$jR1=jiNmg;h;ss52b2LP%5Q*5^70!osmVVjX>$PoW_G8TL)vv zfNy3=CN^8Mlw)U4abtB{e;NP7#^>2e9o?L(C=Zg|e)OM9{|~|OrBwpgrI`AHp9`bkISoRKa(! zpFOeKSwM=t6m>Nb&MNDC28YG@848ScYST)mOffb{XME$~M+@z7`ZbRh>ohT^w?wCW zYgifS-~U>zSy(RZNRQ?elFyIHR@L{&G0v7l$*9t%*CDE7Eaf_zh%F0w-Me@IzKG1? zTYSI32KT%S760;*{FF@#pR_6H3G}9%3IE;-bbh|t-T9A(u1j#8@Fr+`krbm>sN6MUvv`_H2LAH;^~%OnLK zOj1x4<(Sc`gOl>LFn*W7Mi}t(JQs>nA=bh^NcM0qnKFCFf($3O1`fn+a z4P@gJr7F7)_lvC#xh!xO$4u6XbfwDVP6C<;&?i#_8+g7YCeo$nzUo zsprgU<`<72;YIlcuEHb@@{5n~i$h+3PQfov0KhOt!t3D|pWzp8j&cqGQ$1nLB>J37%lCM#J-EM;SN$ zLzL9qYra>r5G|&!5X5nL2%U zxi&lk*_<0Nhnw$6aK83D0+o6y4hbLT=-`7z^4wdlOYatux|<*^q-mJDe#Ui4T9~p% zlOQYy{z&q23k~fY%Kq4FHQDG`c#c6dx|wTEMDC&!o`9-7akXkWw(ZA~<%`t{B9`^Q z<@o^{7LLdNfbn=9p<+HO<}yxmYpUAcOI6oNYJV`Kx|7)VwWaD9KX>DJi5k<{Qw|9c zbEofUc&*FO;#Enq9pewjavUs{rm5-KG>!Y#qV+!@x5GMRaB8`Z?MUXnuxN;w$%~)f zPxH}_a{T>Ng?^B#D!L{Ifm}mFD;2R6Ve+vm9sem)-S<;NGV5vQ1OzCr#OZJ>I?~mV zI^MTZ&F>Z};R%p+n+>pVhFuHhRcQQuE)}^u)Z|;H$RF}_VigRv-Q@ai)By9KRD@F- zWTfJP=45fI(VRH^+^z-N{T&+B0ES~kr$5ll-{W zVQlAUbE7`Ll2V%EnTHc)2u@TE$AJ4uujZm~dj{NhkQ{zejmlm!Yv&;}{1%jtr7lf> zmd7juTc-czDPmWihOVX3iB46)JE?M?oT|;d8NQd2cYj) zB1+p#)7t3J*hfCfU zgSHR>R~qE^P=YoQGlLRzzG#&)NzbhuNA_@5K1x&pM@^=WL)5N_!-5A_Om40bV$UMh z`6uCj_^^*0E>xHW*2J4gF&?(V3!xbm?NZy{9oqbOnKlpPsU7;|`BSt-GAF?4S(GJX z9A01BQ?(8XrsGxKAuo0c3g%&`mtnEcFo`Otmu?O5auG$}(@G~ii1||zS?3X{Oopy? zGe#DFOH<1oCe39%X?qVWp&?6Yua#@*`V{T_C0BC~!JHtEsIZYl7`(DIc)ncD8?)6u zT&@wmcl`-b$U9q+7vS;SKn}pqTls#F@5j@v(E~M#5HT*;!DwPl#6FA@ch_a^#c2v)+Ys5wYuED=?Lc*5aQEHLcQ&R}gi;<92OHs8D34 zOXD7PXv<2(2g7+9+>$5%i|`^`E|TTiTM*Lorv}clwQvy>KJiy3B&}?RE-h|Z_s}G04@1E zz|Bp#s7=H-6t@GzHViJ0W4$~B?HI9fA>ME{uPFF<6cj}G6WqDKQLERPb>d%8C&KIs zPOp%=&84|d;tQ67i~_9BwVh9M6%8ieEM*$FMAmY}_0Z?J5uH~TfU(3()}DqO*{f3ES>_;dsnhrC^S}83+Z5t>#1qg2w42(Zi|F{F(xV zQ{R3C68d+r&HdG;_88!lvI>>G?9!!phkBi5ioPaaUR@xje*=7;l_hs`mVB%51!)ku;5b4Jh%LQ{ERKDBb7OvWJ}-u6L-p3O00Wx{kbz zG06cOG+HhL4>T~_P(|HIzu5Lmrc5TgW^`G!@k(g1Zh3OQn2Sqsu3D!RtEgZNBtnzs z-(}LinnJADQLxfA@pzSP_{B`MhT@bGnk%0J`I=V)qO}#&WLvfNoa2-~mZOoUse}m6 zt7uLU1CM|gETD?|EK@uDQe{hv;hJ`{GS%C4=monXK5>Fp)+mirJadvop(PZUj!4ZS zbdGlFm(@CTdx1il5fGouRxq5gBd^m~{AQKQ7FD?G@XoL{A7Uu6RCQ2#9|;JLS2HKzayrX^pV9{|4)mIvtXG^1u2hZ-UPzn*7u zbmlj}2}g?T2TD}`Ai3XHB^u`I_9)3N#}_l?Hvx_Je5dx`Z&S0qNXJA$Q;+I_*zm$?O?l9$X&2L#@FEHA z6|m^`8Z~++ro=tfnrZv7M4i_H2JT+N*o7MHG!$!G1|D7SI<)XP=oVMeIJzG5u?*hr zuh3{X<*v6W#oX|Di9nEasFt)1&DU5fw!F|Q4%Vvc@nVgCXO(8`pvg1@O@BImKmP}V zvJ5H)9+0zKsANCR1Vzi0Es{T`mZ1R}i|_AiRXX-6E%kO>EsszxZK%|2FEqa(7kj@0 z)u0W#XDaCC<8fd^fDJ^zm5~Zlq{9DNj&^*xj*KqXLB2kJ5rBg4doQ7ybomXXOII>#(mUIQBvzhG8(eX`2MJ&M0?&DO28I0QV1<&w3 z)O+h3>N-)ap&v?Q;upLI1q<8{1# zWL-Ih{=&c!*m&P=)|{X1`?11zEP<|bMX0DT&~cWxakq0cd-u))W8p| zQOH^Ne}*?uyd=|V;pW(K9-8$h%;o5SZbbx*z*-~xFM{O-!}}r*Ka4_R4LM>#f|hbT zdJS7H(yGS4T-ugQ#zP!R!trcoq`L1!a`E>_9iBn0Kt%EVIwToq9x{WTPex9ol+l3r; zJe9Adix@QWK95~ou_E7q_4HP$dfsK=L_i@_oI+`F3aZBxO({uH&pe)GK#TLN=gs#S z<&m5w({UOSJQck>9Z}!omcai#a*IjB>G%ex=HmmBp&o9)ggTQ>y^gO?1I?+o@PA$U zZ^|xjGj6oWI{r`Y^aJS{T!DMxS9ti17`4Haf-yC`?mx}44)gCI5><_%T-!lY!c5nU z)4T{(OWI-hT}0Hsqc!F_ctpe{qI;=9!Ot2L%h6Jspi_i9vB!!g%(@!4< zYZ>NIMtZ!-k(%}!?%3}YDs60yW<5zobEjRWAH;aVPUmzk*uhl}j3n@ljVe*=)yawr zG-_d*QGLVdiX|~IlbF=SmTIaIxegz6!+%|B?{(?qomREpV3lp>9B4I7U~(09MY=gD zi83^Of0@Q#sMhS87&x<|7VC75SLPR1j*bE%kV8Kf197}MgMdQiq%$xId*ofUyVvZJKO5#e& z*C8wNz1A#k+MA&nA7{v6E|FsfFg%%7%URs^R_7^dPo;J}2x9u24SK{%XmN+i715C? zhcA}d#FFDA38w*z|4aG&1N@ESNfZ}6QbF`?jBLGDx+VE(>PSgfyAiTkIFt(PG?x8d zrW3@m{xTVUN>)cbG>i69Eu)uo{zeQ(uCZ$_l8#AE8eTI@=>Lm&hBKkiL_jKg3#ml+ zD(M5KcCTUZ1owdHI#T5!#A3wKKUfj(g0)Tr%tDTr3Hdb3Ab*ZUI}+4Sj3v&K)LMu! z6EPp2kir0y3_PFl5n2x$Zh9eTIvKJ(LmtJ<|CoAXiW-UC5ot2u_1Z9OQlk|hY7I*z z;ax!P$M^Hkg7dYpiUmP3eb6P-7>5o`FH?Zirn0B;j|Whgk>b=rPiTAdjL5Ny)peIu z4HHOA<`${-Dkn~x8HzlB1=Gc9mH9AZXlE?~!64jCS27Uh1`Noy;qCWHj)HRvH9sW{ zT^Gi3eJ(klE7Usf4f86t+%@ScxEImU3l5DWK-K=3tR{#;BZAIX3a;4YmqjcUP^&8y zIE}(}70d?%z2h(Oh(`5N;0IWB8%}B*>wZN49rP1y26n-d?1CHE1q*(|M(KB2r0jxC zA=TQs2Ohr-Y8_`{#(0Z%jv`X{3;Sha^ZgiA1VYIsP81llq|hKE$HQ&NaX(0qfn&j@ z)p8^1U%^GWE>c~!kvi}^XOyV7t&3F9TH0bn#1N-=3BFI^bf%ugl6R>|1<#n|$MNvp z?EgglEZlPL!vBM4>_t-dVWA=(sn9Yq>Gcn}w0o?B*#Tv8ETvt0w-rg2Ree`GNpLe% zaFCnwe^`A@%+TPZO!)@j|8XR?T73m%K2MgaX?MBO@(MNZD~{HqwAd%%{m*4+=Q142 zhYevwCHpBA?G~fC1p! zpDR#zI4Kw5_bjtKh+X`=zPk`L9sH3ME}8GZHUBZ}SYAgPZZ^wkO4G9MU2^p^s$*)2 zCf#Gj|IOPfhc~42Ga0B_Adt$X9k(<4>(&f4SUH99)N?k>h5u2gpcvYw_dA)2gmJ{{ zMy)R-WeYOu@FD*GbJ($OA+7qC1*RM(R!>32{D^k#CrOI94_@h9dWalDE|Fs_;*vCx zjx8botEY9Ib_^of)+!zK$kT>Yv|z3jnI6fN`@d3j@M&^?E=vQK#c>WJ!SNW*xgnpr zIZem9V8uOL$gY^C3ZzP(M+4Cmk*qr{p2jGn@ zN8Y)d`hR{Tx|}*X5--H7hq!cvN9aGO+c|ET0O5Ed$~TUq?_0EWmqp#*mMiB|i(J#_ z6%mG3i0JR3@o1r1ey3Om?n_n(F?^1C@a$>@5S;_ee#peuC7sJ{UZKN8C|@th;QAj) z!+zfn9cL2LPmUI9+XB1xF6Wc(M1Z*3MJL0dqhV#5l+OT)>zU(2gTX!6sNNi-&d_9- z>TcHjNoHN*dLFvTs;QIMMSsiCtZs%ATmd?A2P2!_t3_M3R*PcSYTRu!EMgI}b3gRj zxFKqPcd3t+&+F41ExNr}hrdpjdqTC2+S74Fb!vcX-t!8(9<^fEmpR%|gryGm!+!3E zrZt6N#YHq5i?q1et`pDT?N7A$mZ*$-A!G&ip3gJu>6c1HJ)NbzxSaAK1<)hQ~=d1D%@rPpoxMm1t>1p~4M?GQ5TT zDwoducn&rV$T7Op6&h#Ml7q|;*o}J*d(7B0YQg;$HC)Q&M$c3Iukgi|AY!u_>Hpr~ zlI|~*$C3=~T;SBAM=>6lj8OokQrFoUY*wA}Z(@oWr#dgxf{P6bdEydryg6P=w#VxT zv2FlP_gRCcaLl|59T{OP-B*(c+QJ50eywR6(FLS3P0+QFu=fhO`9n#h(9;q}r#u1#|(?m>q- z=^yK#=!E`6uDdKt!DdWL=8yyUSQ)`kqH#vCSAkmT)7c#`AU{pg8A_(4H_2+^i?wxivG&BG>7@Gg-ju9>|D|XM2eft{ zX1qL=PeHs!cS~Vn65? zr$}Oe)_Tv+CPkhj!5jh|Jxg)>he^jdHvZ1#9$+IIG^vZ9*?i)tVj7%ibFo~VLRxh; zLj(UVlfS!5nf@6vzrfS5m|0#=WoVS6tcLcAZO*a8Y&)K^T87RwkNCk86MBEDJq+i3D;{$jmG@jD8qlKTD~MoB^tS!sX08p z2X6$P<=>9G2~E(={QGxH7J&5Au9cQiNZQp zXwPRWWd590jpISSZ`{W!2GFqo6nlFpI$r>WiVCw@GRT619O{cI(~iA72@{ePXruK~ zgfk-HHpQx0bFK1u7;j-`E>=BG1)gK=|4$iZ8;IEqOzmuKwe)WpuNjZ^{tPM>BP&yB zy5_uXmn)7>XU7Z9jCv&%q6$wyD^J5Fo`&EdmlC!mYq~#cKabT379r1lNUm9ghA(C6 z&_Zmuf6Y|q0gL=H`ScyBianf;y4J2Z(2$KIl~8uje^1XMMUEvuKTMB?|CDfJh59A} zmxUPR^@dSF=U_Wbs8G{V?gbx=D0e`eXpdF&o7LK~9C2DM4TiiDISDrq6fY2z0nXn3 z=Wtbckp+r~1xayy6|eI|0Z2;c_*I%W0h-77RW|iLjTtQPNhU|v-{Ul%*y4}K=q$SM zLHzyCVI0WUhaN$8`+vCLZJ;g7(fUiF%2GhjYuP6rbI2_L*SmZmT5ra3ticWGTIRcb zh6|p1v8LQl=bOthHn>RRZ)JrY%254L&=e2q|AM<{1b%>)`*G~D5*V{OGXqX&H3ai? z6b-5Ja1?515p9)bW&$N}kNn|Ml|N##^fb*m=~DAf2+Ipuvga`$<~5vg*%wZ;FL-=L zWy~Hhbq^gdJ7$z$;{W|7Ej?AiG0D=5+;a5)FHxVJcj~|gHQKG&KwmzfkEIF=#?>mO8Mo~alF(2fK*<}k>L}Z z@9F^_Po-$qwo;9IY-le- z=WHm@ZjKwcgrhT1PIDREOtxx;m8Z+M1x9iSX5mdnX%UL}1f%9Gaw_aWry2{5vV(JULKR<#`mJoxcsP*fq@t3W`9b-p649HZ~JpohVUg7QneeEYz3iTat4ls9vu;96#gOA{9UYe_&TvNmO3~f7BrsJM2t|fC{ch~Ch zLauEhhIDsl=qQ(G;_D8DZ^y=so7m2!o1aLI_@)sRHQX^LuIV!osG8Fh{UZgf2`jFO zbR9oWrOaj7eYY)Noh*~)#n^AWSg5YqbUSl7b?jCGW^F)Td5R}OK&-)LyFxaTG-NR8 z@@*0b#xHiXv6tUv#PQguoQ**BUxKD5(Bb+AwERo-13#{jHxO?@9G)-l#mGf?0mJ5@ zuS!A_X4(^VR6bN+=+@AP;Bpv(%6{*SsX|I9;KO2V?y;hoWHGL2V?23TwAEl-|_!% zSd9ECgZ16vlFt$ZCuuyVU!qb^WUE{cQQ%Johu)m5i3^R|d=-29->f?Q0I`5nyDV2- zx8WW2XNKCpE7QO=yvE&(UHuTh$0ycG$!nE)Plk@Ca@s4?F|npu;RPX$iW!P1A2+jAunA7_gg9Q(j;84ld`LkJrmnWKz^7ALlWm!a4JAsbKc-TpRs5%1{Q(&&vQ^O* z{fpjg2L#f~*DHx>2p`30_TCt^5wnLeA|e7V;1e|uTK0o*g*Y1W5_N>=%T1J5DEMI~ z5Y1;?vVXA+e^H{~W!UsQ$NU!}4Olh;*mc4DDojk6D-0BShB$@P$2M>Wqn3)9?E#GH z1EkuQZ&e4dX~J4YW*5`zAtJ(%X@KP}2FnfH1(U%WN$&p&HT_nrmOg0Jfe@fpf2S%g zWa!9$X=03}pt+aX&mYz5(vwuYDGW5epHF*duC`r+a&Dj;N*)ZjNa{c1vk(D|Ilype zc5Y_M9lD;t&y%&|GYlp84?$L^PBr0Z^kKF_-B)TaG50Fm3=5;-@f9&Yl6k(X(FnQd ziVtGBxW%Q3sSXuYmuXfTQ!f98C)8r28rbblSg8fFNOB*dGj)jNFRkzftJ{ZH%7#dsQYcZ^;RooS|GTn&uqCO=<`&To+ zy)a!-9mU$)4`UsQMc)X6hhaCYYv+3}m;8N76b|KLAIII~^d7%4HGy8S<29qYVkx(w zW|(0-)YE)E2?7!Ub)x_ZN73yzErG(ZaB2#^u{0@RJtRQC7+6DlHwgY`I6RG_>xvb1 zOO7mXG75gq(h&z_qiU3~kL0QKbEx^yGODh?s^dbg28N+#z?kn|j_53!SwUZyYcb4; zru%HNc#@{~WvJ?_GMPrJHTMiuOQ;r?o@D_Gr@a%Eqr=3ZkI1m0a#Ywrz&+q+R4v9x zz#YGD!U{*jjo9=Btv6Sd=D_JVMY=s7PREJXTump8@4<*Yov-Oc=1=)*-vG!w$*$fM z^1F7*xe`jQ|3hMP6V8V~_@|cG)OZPLE`)@py45(MGB32&i2v(eqdGn^YUe4k-TrhH zEhpP)aj5EBZn6)JTCm5cbt7Q=e=e6{c)6Bv6yJCM!MOGF%awTn`xTBS`MX$tHWoO4 z(xo*TKe|RPj;{Z$(R#jizdB59EWvWFrb@p7CUw4xr(_!1S}~i&YlD-}^z?V%6Nk3ON%FKoW@f z$vA}STgd|exV>ORjQ+tR-5#wY#IjG=l5N9r3cElnjW``-P&nvz9>+KJq}vqXxng%;O|tppJ5 zP>^gR0CFJ6_NMFc`5-Bs_72ZIsP>5`@CbOHaa}Di=I^FKN%U+jRTRK=&Qr{pg1Tb_ zyiNf99_-{MzK~;6FzENP!!8{qiuxI$05U!D17bwbX)l;Akwt)vT$)J0>3M+D!GP1V z0H@*zVLEbB%Jq{kM!}L0*r>KMcV!vH4ouGsn_JAZn+D1xG!%VfU_zBuF*CDFEx$kV)*%hNAWMJ`3U4QF84_1w_2amO2F*|$L) z=<5V9gg6lBnW6BELhXe-5S0TZdpxTg;ljnP0o;FLSg|%diH+KWK&(3<9A(yMgg1Ep z3JaF2(P|GfjQA~gQju}sZU@?eS!|WfPHqLYhZoW~ zV$1cB3LwgkAu8r3n(`)7ZswV_G!>hU0MshCyBJVV3J&4Y|!+Jj9p4 zj^f_A#N&Dh3Qo@@jBL1vmT?a)HBun<1MFz#s6ZIB8U@{fx?0up&VnVQ|CJvTD7 z3_?K&go2^$8fC(aaEDOP{Zq6Sou-FN)J??$_HSUognyhtn~5E(4eI}Af|B48SU3j4 zBWNpS3_H>EI+DG{C>Z}9G)!kWpG z_KBT|)x|hjAuyZsN1}SBv7p?JG2QM$EcVS>PzpQ#VGIZnmKi^RVhh%L(8H-6V7(^~ zFsvM`w_!4_>hILTqFJli(bNRv+46ySkN3GqEZMs~uFjIniMsi%e2x6fXg!XdMOAW# z5uNZgMg&pF=fk-a(58L(dgNJ@(%nqJSxE)_95)^RW)WXc=j)jhknFbbn%f&BXc@_y}TNJn=Ewti;mCng1DTQaj=PJ8gI$Al%6q zT@kH(-Pls70NX;qqavu1I2c!b08$N;CE-W9Q(a)Ve=?!yMo!uGTAEAPt;1OBhS@SR zntT9eOTs6`+QJ4l<7Z|E!)ob-s5bU_hbD3+`?ler|0j*@lbDb0#d3)=w(vHT)ze^7 zq-H1@(US2^u76H3WKc@2V+SDx!P9KL<8nnz6M_*7ajleD`H&L%l;g%A9QX}o1Tm&R z8V+c@BBq0S6Ok#nq!Oo%oW(a1)JW{viXYeo*zgppW%pxP@&U$`S72B;A88+gwldDh zz_fgHy}YB{C#>?~A06>0rE05CC*;t236sI5<#<#Hh3oDUQ`6Se#UE^T7)*rjQl)zzqF;`20iFVc;f zHY>|4CH8%^TF74A+(9=^b9a70k9MS5Ms@ zoT7%iQnYP1ZQH;U9X|#5fO@)tH#zA;r;ZfXC?Y3PzFrp1ABpBQp>SM`*7SShwTbYz z&A|vN565%jQZAP2yApJQIP-3T=5FMMdx__lmL@D2NVkDXFi;tZKQ2ve;FG7*d=Pk1_qKCC45%F;BrI>FCDpO2!@JcLm7lT0=ASu`DDQ79A~ zKj=6!q2tVjigWT=d?2Cg41~h*g|5@^9gWIg0W>mo#j08_e zA+>x;XgEI5aQ3!=cEe_x^H!~j+UVIs#o5WJ-#3=tz#zipbNGJ~-FL>r0ghJ}F+0Pc zMxxzpkoR^Rm543PxZ!<6pZ|&^wqG{5ub}rl%jjOHx|^;++zM4U$Oc!pdiBr*gxFzj^N=rmtz?fnv>rj~nDNgp^!u$ufUA1a}4!;jN{IZ*< zT=K#FD6Kq8tCZGElOUi#qxbWs;BF^ytow|4P8BusXpPjyTPzBj5Q7pTMxhhw^M?UM z5>Zb9=Rc26Jkht#pn@+GG(dO|r&?CaNQ}J0gv}b5>?0Md%`UvzE8%Na;r~TAsw1_u z20bS~KXnd^r9~!8hhV`khH4iE9QP#Nz8sJ8{ko@2YUb}J&BT6x1`OH1GYOM0--$D_ ze}Q)LbAOmJZhU>}88eS16LzRO4g@m~W7GIj6Xu27d~cOvPLhIg-GfM|q0B@>!%2dMa}-~X`7mOpL6h0E5CIW1 znO#qS;}Km===cU0EC^F(oTXaL>ynhy2AT;w#vOLd!rDj`-H2f6D*PfnV$@9>4x+#K zFxe9^Qeu$VX^@knTRWzOgstjhoC_OQ%ZF%s4Te(S3T?R;x$N8(aQ2~0%mIcW{O@OU zB0p>8=zt+JahXZmBG}o8kbiI)_cR&%!k_ z2N|^#+Kr`zxp7E0++oJpZy@P#!_I$9jz®hxA0oq%RLz(7;jFMY4z0ngc80Q;r) zA2EuEz;oQjAI|5&cnB*jn2rA?Ux)eP&vE{ES~0}_8>r_7R_o~Rt7RgL5LV(+5vQ3L zBt>kvmFi|S9-?stN+ay?xM}?dT27u>MQ>B@L1vi0te> zL}MYaghN{KTSITCgQ0`*_I`f#C zJc*ROAMVdL%msFXl6?oJ1Fei^hkOzW`D6yqN$&X z_)ff9A&!)B9PiHZD2v?ajL{!9@Gz$XCrVX_8UP7pP9ff5;KBIDoVJlQR$R~3+Zd`-F=w{${ zqPC|{Z6(k%c4O1B3UDcvQX8@2hKMqqdIdt_`AP|q;*@ldvJWi^p93BU;Uo~k$&SB~ zS#JkVfKL(upCsp7kn=X$IjI<#7Zs{1k_D)}ph!uuTUrKP3Od3+c+{wITa7Y6OzDEh za~f*h`lmoW(RL3sVK({-$mTywb*#EnM%WFW4JaaDPc+1Xgu)GO{s`tnX^s*gv=pso z%F!9hx!+70{DqpJANqZtNoBn(?R>x0_Nz&Y&zs}}FJsD|`2RqU2!I|D1Z5%!(nwu% zvW|^%L;aDdB3KY-2AKW3is>k^I9XPj6kY*QF}qruW2v4)Nm$R&bimuWo6BHa0=26$ zMgdirj}o1q#%u0AOs9z%SL2jR*mip`crXM`7t#4>qU^rNYKcvM1CqU)roy!;$ZZ)y zJ{bz;0GaXOGHtoirS3bZexYVWK*4eE11V7>PW&41F}f#%t9@ILgNdCWbbAPlZU6Vu`k9+78nQ}RR6Z8yM zJg$1sHzsDlF?z_MCD1nd(`}{NX>wAZLo$CAcOqyJqm!xqBeGPNiC^P=R#i+UUkjqD zMMM~I3*f;Z^w}dMlyErK{hfLsnMc!^E)%qi-H*edfU*$=?IP@Up#2?o_1_8q6UP(l zD*WSNSscG1SN>j1TU^e}dE4%6^$;_+U^?(BLSZv7`XEybV8BmeBHDCl7gOUiuuII) z_yp+pM8N=;;@uiegP1ZEn#JG?3^1yX(Eu^#V7%;vCsd2@8&`c!EI9 z*mg&p0*QTfaau?meI9-PFW9#e`bRD{n|-YH$xK*WWS4I)(~lqJ z^v5!+@ES7~$S_;_*V|=zBTrs`;psUwOHnIeDrV#H24`a{6q`jjViv1t#rhs+?Dul#0tuP*$OQ=_=fM9WiY~C@5q@w$7QzAXh6Azy{zuc_va~Nc3mp(Ljf_$`gW-QTVX2I8 z1`hLy{a?$~sdmaN2*l$%Q9Zng#BO`3{GUwGOt>IR;DiLm=V%t35yJy4t#E_(+z%b= zBAqSx9Y**a^M^sd;dc!12K-~lkROgC0gc0wm38IHDAf|PD0te0qvB)Htp6`T4&8`4 zjiV=gkE3hB>@M>?;C+-806s5tFtxZ$ma%3mIk9MWqr8U0(+!7b3Ve^nSHlari;f1I zjt(eXmssOlS;p(`2gHOM;ts9D1)b+0be=}oFMV7l4=5czP(7OV*s{1e(CdAWs{%M2 zVQ@K2jg-*ycq2r|TDW_U;tdB)XMI@?{!q{^;Bg${-q^4j-3XVjc^Xj5N@RQ?_=8>m ztlWcdygRaM7!?ECsfu>Q-~}F|px$`35P>i&X5Ptg3Zl(6W0mYli5eot62?35Xdp)X zaYZ6dOy^WBj#ghIreUuaC=~3zbqri^u=}GgqJa6*rZnLDalrUv94@rJjN$~s-*-Je z(NHYT{~rs`P6``OY}n9?uV0m=mNn%v0pSM&<=c$l_`9H61m5PXKU`6sD3<|_zznc`0n;}^z1RZ1CTQ@%j* zMNlV>C!&Jh16!R40h(_;&*S(f+bEIwz$*0;BY_-q5@pCul$qnva2`dX_gRLUHAZRr z>rrZaElRVA4N3Tjy;Gpg#8z7iSr6ehxklqofrb~O_g|0N%>V?4IhkoPBa~n{95FIP z#)&*5hwT)|eZ#F>zsHJH)&=4j#$1@YOLP==#IE#e9jH!M9@eZw^!H3nv~q9ZuKzeo zRywOKHvrilhIqOa_Pibc@1QGJs>yAorV#TA;qiDN7JeUA!yx_N>Ix0T0?BQ0$!c=w zR8<+k6jJ+4r#ikwMs<6Yx&pFPm6fHfHTXjUt9t;e?+OKI1XVwC7aBnn()RDmFdRqN z&`k|+|5}+q)f=BeifdX+|M%xw1p}=gyN9L{u>qRJG|=pDU~*3o@x?&xe!%X-HR(F| zS+V?!kA>=1f#ugj*D!#Jj~s#-0m?oX zlzseL4mI{$6#Ye}n!bep(FI>43~2ofe2oyGb@yhdSRdtTQy(-5UpiY^5E6jYH~k1T zm$P-O4j!MUL3M-=(E9X8F)bndf!2GRtH}L8(>V@wz>xa%@_<4t-CtvQ-V&!}#5xoG zz|=^2aU5eyp>a&q{kD=RMf7md_#K==@mP$3bX=ZJqg3m0bISTt26p_=sF3Bg-GmhH z?OJss%X5!nKInDi2B74kDR}~E-hy9Tn%bVD*bw4XBQwEMK+RL+KFy{D@6vBrpQ~Zo zaQ(F5Y~k;-n*oKNK{#k_VppPHH)R+B0WGa*Oa^CwUuzQ0AdnVh|_xCPQWuHL1vCUFER~*7^q*(4hXNnO#jC( zjY*Y!vy-Do|4J=wg&K$2F)oap{}!Z~oCy}wsgrgj8_z=7^1n#=5(hp%6EByp?tO?# z8M?Z)5M&kIJ%^a^X}bIpRgWX|aB&XoxWt3P&JZ^+10XN}AQ%WEkN-RroF;f3t|OX7 zK)LnP5&%W(Rk?}ER;=*{qr6WN&BUUAG-}1~X&U~BD9N43F+Udpew0(uIiwlBrygi* zv`Po^W!hh&5kAlJLV?D_X34&iIFf&)oL8DOBgF*&^ZhZh2N1Zpk$mqL5wdOI*=CH} z;(XP}7|;ESs5LhKB5<2o1Sqf>4-l+K3WA_GNWwziC1{NeFwV=jQGQ(kQ57~i#VE(| zMaa6r37W})wL4j!=)R}O4KC&P zWUFS^P!qZn0oj*1d{pHtt~FM>TbSubiI`!d|AuSka!3eQp?LM;2DukU=`b7*wO_@{ zdKW|n7s!CTPCJ{=1#ua&JxbND=0nZL65GcIkLN>IPco99hxg@g%4YftC>Xs$xf3t% z@+j$YxLnRBDx@$=S^J<-ZOqcjXS1~XUrMrnzQXrK!O^#cNU>A2`bm_GgM@A-Fht{0 z6$B-(XE#1XhDAO%q^b*RJPX0?-Tvw{Zwyf76BHJlWdfanZt+EgD;U8a_-qCU6fLW>)s+~i?YfPMKK)%f1oF)V8`T0&@#K)43yN*anFFdfh zF`B)W_)n4_^Tkhl5)rlt3{dk$;CZj%{~v?~wIZ`nZmY5tv&4+m<6v~T?#cK zFd?(gk6Z+Hg)cFN-Eus;WzUKf`Cy9*u2eF-gbz5EMF;#}_B;*>@H5qZNpg`yV#9sW z$~uI485qxsqwxRo+9i%7xUyt3 zwM?FS0U<&xb#lP0nmp3+0WhakmZ~uXqM42PoR-KRr@$Mq9w)RV742}e0Pmy9*#rQ+ z5T2O1P;NW1J>xex7C_VD0{(aW$a?vmB*q73ukoQx@;+i!w)ZBLgW2o%;24EtQ9e?N z@C5sRA(+27cFIyhDQ_TJhYy!qn5^PVM5f+@X3K>qWi}XbH_G};InsGYN}q9-c$%%) z4OT?lwu_AkY6N~+{5#Q={}TUO@xL@V*R$n9ktMp{_I7eK@!9GDf;os6Q{M(dP8hh* z?gEwC;&vY{kqu^Sp+@vWs%8cvHG`Snc^3>Si8=DYw(N{n^s6!8|4X4{hnk1gFWG}< z{&_;~K2fr}Sg80(DCTS>|KrdQiKiP$%nqc}sYso$DO01@dIdcWH;^$(0c1u`+(MlH zd)N-zAgC=&)aqf7(%6c>fayOFrahRu8w_d*6dhuRQIXo=0aj|8ww~pK*yy* z!-0k2#+eh3a_qjnSf21Tg~TR+*#o7*B-z7camA0TWTNb(W~=^QGNa6u)6A7g_;Ld$ zxJY-jznL%N@#UsQZ&LB2{GP`!t_UPO^CTLVZ6Pk(%F#$Q{!E|Go#cG*9_PA{JJD_cPg>XC<-u@e!F$;+I@1-zRWh$gr)Ga?(FS<%d18K! zB%qAc_(Tv#Ov-`dKSxuz+opW*;!na0T$im#e}a+=K~Fxx)6)-L+(>fr4oY6Y+{)#7$v z8EPi%m&j)KJNa>xUMBYvq& z9em!&hbUJ66@(SG_@1>o&F7D<0qPY)OgI{jQ1fQuzF)&~`VvGUSQY-+oYU}txcO^b zKK$u+SqQ=eaJP@Jo zC?I#6O=!hMsp_vhoxD3wE6>2|;7k{{?S$9i4meqy&~?Mk`-REmAEr@kWfe+xSog~) zqn!ws19#*|JA7=7CeGkwL~H$MolbnUM%!CK&e4u*B))Sd8NUJ1GFLPO7eQM64O&Bo z@e%F@#(f}8v%i7`-#kjC(|_Z%dJvi1G>U`Y$x=Ug{}3Z=Xb2Mc{>xcCag8q2a7=Gx zeW;>TubMl3B@4Q)EC5OH`Pa~6wUlEN0X}*?Kto4?<+ehzwR3|m%!-p|7yOYy;C?<% zW2J?T_nRbD1cI!29sZxx<>dK4TcbwaocutXf|>xE9|tDi4CcEZTD2CmevSgiz#LlA zH1#3G1A3WwidSP*0?Z~jq`YVU4mg9h!v+2y+^x?5pdSU+>CPHaouJbnQl|TKhN8QR zwdZ9ndJ>scZYcj~F`RraK`8n;gn{+kxm}7%J6Wv)SVShVuJZw1b;zvTOhr>05v*MZ z4D-4!ZH;DB5*xVhismG`zXgsaQs$kV)k<}p@ zcqIfpQ7}8FIYf;sAP0CZSZ;G@Ls2mgfr{gdzqZ^?u^~{KalmX&k|*l)KwQXxFApfC zWg>-2F6lZ9`H&}gk%1?Pcmms+_8AKoXc}J=RWQJ|7K5b81W7Y>{CX88P<#w@%K(xl z|A!nMdm~53&EMoG`cpvU&w*?i$U+>F)9df-1*6dG`9q%zwk!Kx9>ot3l!Ntl7Z>ON z5GDH@Vw6}GfD~VsP#wco--{+>Y>?)}1yNoFAmuFts{x_Rr1g3Ml3Q%y7GE8F5#@BO z?Seo2-{3o(4sQUN!d(_nj=i8zz3_bOg6HERD2VB#;L9Jz$Nw++;it+F9fUXrbo=Rl zOQ?X{gsPQQ6Fs3-58R|ah(#`@lKluSQ6zAF%Sp;@cIBw0D@Q>sSsGkPY1f%7O?`|k z%Q@0J|ML8w4j=^2@|iqXs_K0aI#mb16C@NZb5k?{n9LS$aQa>uYWu2K=a&F1eO+bkp-dh@B*@f z_2r{CS^(ZJj2A;qVT$~OCvh z+H);Y3D63QK`R^vHkp-ErgZN3IIzh88-OI3-!<4gz$BP2z><6mpfzkFR(d2%W5AM3 zqTLHpa^`Ck8N5a{bqzp;`(VNff<+~nH1A1jz+hEw{QzFbAjaQP2}0>S8_?u*b;0G} zIhVQ(Qmw0(lxZvp$3>m_awOr{5VuL&;c;+(Vv~GBHfb>l$W9}Psf8KxBe^)Ad~Q!T zxg84=??)!yn>lLyHb<+EvaURzrP+f_V$ULFUtr6=M6FOD8bFJ#;6Kihr+*LXEONV^ zWGWk-IA(d0a>JTtFf0SPYJD5}WbUTnY1Z$JhzaMCp21Fk7^;vX01>drt57?|hJ@(I z{BWJd&d#GecXEibr-V@R0YNd=b(l;Umgyb9&fTF*oKx zVsaUYNt<5gQGE_U2uRE6jW8ef4|=1X-Y{Px&3c~hNDQL-g@xxd-i)3k$?yk9@%=nz zFdxh&J=;V*zblyzeoq)uHNHKj^sQEvD zoVKEz@Oz|kXGXH5bNCn{-S;kA`w=*VpQHXac~hVUvBb?_az6u;i{-WfEFHg2D{ml_ zN;~{ixT2SYQ>08na(ajwFo)~>R6Q1vktd;8dl}J^L6+(l; z=)QKkuYvAc-kPOex^L!h!1IPnf#Ct8S%6C3|LDQXM9b+#I|5Ga&rwa`lcv#SP%&qv zXKNZqN<&ZhuF6s!JrPHECG&ks_UH-yg;z{ZB(6)=0oy#PDa%yL#SX5A z;Px2RuU`dfJ2v3~wR3BF5!0I@e8WXJ7 zmps8*VnSwK)NIG8+(CemwmuHw@%7a5C#+Q!j727=0F8-Ye7ixrK|qwdmx>u*9xZ@K zi33IQ1b7q;04V_QQ7L>+C)uJ?0U+&#d}#AkrSf9c918%c?(t1(GeC3z`OpClFf%hL zVhJmu{tHl%Ez9L{mdiyfm%Z%M(JYsT*{8>YP;zHwti7^dgK!)Cw~&J*`2j#hQvnr~ za*>XJil)Rdfw4*JiG01uidY}2L2S=&P`ZOBnnPRY!b*tQVN+~FRDt>3LHx(`TfFT5 zh?m`5_}V(w$o4G?iL5D#4<(X0h5T=eKXCy>DZW7K`v`MniND;QqUz~M@ZJ*;7Fp`A zTK>P|X;lBArN9erZM)w~AtO zNaHH627G!AxfvV8M7sPH@;_vF-vB`JFfR0+)b(HBuyJF)=0^c0apJt_iYCCHh|AhU zs5BBz-(rw%j#SM(1B({Sr+caYT>Vgj5}zqh@3N zLdB2mTo9!3UYww4r)~(76|2t-(?srk=GSacog}O-m&w3IPkRCn>c1H}U6^ZD?-I`E zml2tKGEK|=rSSY(h=KMqMmG@sE=F+RdNZY$#Pi;Whb0-2nO?+aFniu3#(3awO0hz6 z)%Pj$q#e>>Y#Q?$z085>C?B6@{B5X=I#7;)U2YNQ$7qf2NLJ7*$(q6cZ80+`{C4GPgf8B~mk!d! zxpeIaX8Dw7|6fpy7#V8WJkD_&v(nAQSz(enOm?)nCiFsLAQ`01=FW0?UHd%Tp{t@8L zkk#2rnM7Bd{Dye+e#~RL%_VdOlf_v!pD*EdtAM(X-}|10pbTl9hFa1rGjP9d$p-7X1MT~V+qi-YAv>qy&{iGCnfz7WMrY|d-IZwt9_fD9dr{I$FUHsvu8 z9lu8vY+tmdv1*QGg`CCj%$s=@>mCPUk4@*1i{z0ry%VpAlM$f!fIB@yOyB^N{CNbA z3*rB|0}#PV7ATg|y|0$2ehnlU!X_Y+sjFDYQsuur@?&DJl>ItTHoTc5P5aG$^ z2wJXSlb6F;Oi8W@{3tOu5GSnT_1xZQUw0Lc&!R)XF3NU(TpQv zR|bnM7?E&FC?B+_dO5lw@0r!`I2mt0ijl5~lj}_|rfmT&e^-nuwx$w-hf(=iC|9CT zNUs24{VSC<^<`A0^Wlz9!FrSusJ+;%)IbV~c>*x|eUL?62%_*XNItZC9w3$C#u$+-fGh`jSznaRv^vm1cjEry;h@Eo__PgH0NI*rbX?ip}qgkl`*9p%{zoU6a+0 zxqinPKQ~9N&hS4RTCeznuwQ(@lW`Yo`&T5GTA8?wD63>a*GaN@h^>1L+j1XUaU0w3 z1-^H#If3doFY5MIQ8LvQp#z`e!O+g4?cYMS;>S3J&@QC)ZHt!A@j_LcATGp~y89c* zDX@e8%T?p_@{jgqbJu&&nU6-I|vN zH)o#G=YwqiyG+f;am7A^j=Pb7!H1yW`Po8Lvn_Ouj_o8U-C|JK50qg5MmDv@5{4y1 zf@vJj{uF4oEYyDnAWXdAN|+`N+yK>(US+BegduStPBZzOBX#h9RTZ;OKTD9{87A3s zY3RC9oYYS}&<+D! zPxypHRjvP!L8Y~EBj%5dcz}X?6#U?~8#O5d&fsU!h}&T{DCom@opL7pj`fcR55BNS z9#0gZT4IpZqUwGjS@EIGsMoYh{Lg_>%kF`>p z&7IrLkCt^_v^uuoy)HIr_*F0gBL);wA*_!eG)K=}B;Ff$$RJl6Y6YE8(X(<6coP}F zO9r`}CmqWLtl$F1EnBNG^lUsmTXz$TDMl8&Ciq{wSvFUcrK<3kBAr@73N{oy-=&n} z(%P;h=Iaz8@98`R?^v|rzGRhl14g(zS?&VZS2szw9qB|g)8g=BuEy1HcHn}_=X3tw@(*Fx5!^7^1AkM5#Oq#=u+eAM zf{0j4vWXM!=?yv#kk}`cLX?HbafWcZX$Bv%gd}q$gw*5WG&m^&B^(M6w*tqx8`ZO2 zsj9k+7BpDmamg$?th5(cX^lTd>j;nQLW*3iN8o?#Dg)_kg$4IrH2$tf4=4q)5x%4! zgmQWCm4Z=|>~W#vf@484=V|7jz=8a4q=X*U<>V!s-H5`(vo4^uqCu?Q>d( zkG~GVX^!%NtouO(FlblK0tGXfHR3=N_5TmEin)hqE^Wg@Av(hAvA=QW+;vSro{mf^ zqX>aW#Zu_m!R+qi%iH+!RNm9Wm+zZHWE;zeB`<3j`1POI1!NX6E3ZAhP)36(ulZ(R zTQKFhr9)n~$bx2YzGk$TWj?_NPl%@G8@jwwd(vW=Y&I2S#GPYQ4_n=$t6-}GI9vr| zT|)}xxy%X2UaA=W2EQ|6)G*fi6!INQ2tMSPG|htTO3-fX)Lw&THyPCAhyM3pxmw;( zrZHUPaY*j=ycsCR`astIdO~SGhbrt8heqt|3`Az{UZ+f2j}TxqSW7V7HxHe!M?*9; zH$=&_iL}Ru)@sk$wOaT)#Iu-T0iH8+#f!Tg7fHCaEKV1gGd@o+F+=k;IX2O&+VO&+rtWD5PCd?KpU*fof#*ev+VYuK9Av(vGS^N@plCfU) zMj$c#Ku!ILunjh$FI0}x*J(4hmvIkU2SpQhfpM>XgoO;Vz1Zfmk} zA_=$L#I83bLKPO=_U+UYxx{F~N2#ou1qqMZAPSYR`LCdxTAOaZr14UbI=M0gh46|heIJE3lTIb0^% zPfJg?6*Mq!Xai71O@&F!QM{M^a3Jl($7&*?O z^34EE|3))D6#g)4q5RN|S;A4l#ws`b!=wZaZ!!bF2k$xTlc%}3 z#6+r;&}tl7OIOlE!=oJL)!A zQd~@`e=ghcAVP445#1yz=FMt8OIfm2@47nscFPeeN)`IaHdq2K9 z;5z8cz*|!tlkmO|?t;_eMW3dB0h?dpE|6BbQZZj#entdVK@?Ho* zhY$b-Aqp}8N~tEo5nQaSP6CPhqcrVYlukWil-0wi{VveyoTdR18|TKtTQj+@c>t+uaC3$<9<6FA(Cn8TPB&p19VgdAdzd8_#R|jkJ~=ZN_qQ zaunwRe&`UIa4*GZlBa=lA3JDHnidk!4C6wxW|Kv^^2Y<|M82|eRD6Lw{13?Ip93bx zA2093qg`l_XO=-;KSL}u211&val6^u^WTLV)(vUKWP*!u1oe}y&8-JZ1VOoFS%gLs zzzRH1Irl+i*RN1`_0qd})DOQ%?0*Z+&OOBbPjDgTtT;`IfaThq@mvW#;`{JH1yJRN z*Sa4U`bcV|cH>6x#Eov=Msn$QgymO2Bo|!(YeF>1Y6_Rwo(uQ#_Y=qw-9V;eVitia z(rh&u@|+m2rXs*5Sa(3I96mRyqK!he2qw1|`kyrmj0$=_7IZTnDS>1gywacxXf!^6 zx^Z=p7Ja~7bLHu6R6W(NS9KiDr#HONH$gD`Ao&3|IO87Rj$uHGr#0|%lUt75Pv>gx zTV*=U9mg#JRhbETenX&|u+{?HkQP78%*1-!2^QMn_ua(K zM(apxM?2;hYB(RG>wI%{;uuhzweWs^1>ff~A}H-(gRg~zBrRR7=UG}m#ofXzonZaH z0eZC&C+7qK>bVBxC*i!hZ~`vJ|I2^ARMC&+t9>7f$PO4wgv2gyzW9BS%9jMnb}57* zn0+qmJT@th>{n}$ITL8qE}%3&jf6WBltSx+uH znKtoi{QuMZb7@Stdg;cIsB~&|5hQs(Qu~fm(|guez1T_H0EHYSZ)ae#dUL9oY>|gM zd4ua2_kUw$cP3U1>FC0KU8LH(ShR?Q_%uK|hK(TITiC%0JA+VvBUNypQ6+O50=5;T zX%=Mi&uvh!KNtw7TcEsV1DlMdi(|N2%=KNe*w}%+Bp81Slg$tzblT`g3_2f=GP1Kl zj++gdG;OV_G54Eb$LT=jASzB3J}fkMQnu>}+rbTp*j|PAGstSnP}nmRZ$wkTKPUf(yAv9{O>JA^127l^$j?A zZ!b~ZQE<7~PM*_U_0Va3m!fWL{|*i%m8jt&K6Ly%F@rzQaHBFR%Lv_KCWVL=yqQ1TzKFy#=${tf*9=rvHGwUDh`7ssPUaM;13 z*$?HbI*kqEc#&!zgTKKOc8jglgz>ub0rVo>s0YVfqL?Sxbmq+AcOai(o-C%FGDrX# zt33mq*Bk@MCj&AJ22I(7J7-78=0+0IU%)LKVUE+;=Qvb2!qqm9lZyr6;T}Ll3n@s$ z+Fu5s_IRfDJ&7l@I8eJWw;ZY*u$eqonV$yfEH)Oi;VDYRtXILJ$OKL0G3;W3)-geS zFY%>V^1=Xh-vTGhIf~vH#v|tY@zG~dE`4)=re8Uiv5IxQm@D_S9GwX;wr$Nth=k^t{p2=xyB(NCAGVJjyi6&-uGqXGEtM#(^oNAg)fJ-JqYU~dDI+ZGl zx5*ikLs+(eLPYGue5xNk;eXrw7^Gq(6)T@2xrpg;mRZI$m$qsU)tcWpnqhvwL&bra zSPM=vTx|@OmEo#kxDGO0XU9b-lC>arAQrtK)Q%Xs`5zcncfhC#SpNG)oqUZLa6J?I z5dVk89VGtS&zn~8iyD40b`@$R?ab_Ju=y0A5U=gy=O!DDY5aWb^AyeHb?ZEyfGrdj zJX9oSLlLUy_z1*=E!`H40#rY;0H=etawn$j zdmHgzcSj(&Soy8&`vjOvH-ccYq^YS3&X04XXTCHl%wUvXEI^f|Ap*jOSvvn~Bz8kgu+}J-w~X5I5&w6D3&D=_o)G?jFaK|$*A5;_ z(U5J5`X2)cu^EWgR}`i4v&l0>uKccx9u44knOln>r6)N>ui2G@|MFq$yhOJpgUOsj z%)W+hOYPi9xQ&<%-PS<2IVBP4!ph^)HA2^&y^SK3JJKYlG&N5JzK!k9g*^xJ`nE(< z&RgWg>877vyF{-|!e6*VuQ_it!HSZnX)L|tE>nVEWd_msBz!IGTG@#P`LS)fT-i3) z!C)B#iI^7{j{Bicot2|;I2F?#$k9xGp3Cgbokxn+3R~JD+_P-_J0ttR{RXvHu;i8+ zbl`D==58Qb63Wl6L{PSpFDhXdZD$d?vY63!{Y3t!yN}fj^SH`i?U~4_Q`vTGda>s6 z!A)j^%K2k&KGf+JKkc?>rCUlEbq|4NTc|ntl7>u!a#>cru6#i+SfL+*Xkm-TpdtF* zI?YPPm*^-`|HB4Fvk*1S;9{+8>ul|l%qa$qu(uy!Z=W!qtL5j+nFi?A+1;iFXi7k) zs{Ifl#j3Uuxx|J7@N`@d7h0STJOg&qVB9KfQ3y`O%arC|m$37_+3k=l}Y)KGKO)a8iSm|pl$-QA}!a9Bo!#jrN@m30z z=8!Sj!T8U309Pr}Adg3g|6+4I0#zMP>^Fh69h>q&5Cw_&0S8DT{}DzanxrDOxNeP_ zvEv6}xxJ8~aerdha)7;!K-BNxe#Sv;<(;aIS`H_{=*)tI46BKUX&boq4df4=fq;0U zxmb%1fJP+wY#k4|=<92=3~R1kqr}(1ankzm1*ShTbRJ8#MN)Yx#l=I2j$Vgju@tov zz95J%sJcH+TV93pmoKJLo`Gu*VdEsKf@wWK;jYca6%2 zA%~yFhhCpAr!cdQ?FJh8SrmmO&~9-;8a=c|$=IGFAREu|1dOK&iuX#PC2_mxi)>8O{C}4kUoqFn_Y=4fecN1Il?TDCt42EELsTN(vsrioq{%1Q} zVIz5&?E$Li4LwbOQMuAEuFiD|vwN~ZyY?VZwinPKw&xv0>E4C1i8lVCzh;$~<@W#; z?F-2tdcq5FBV;A_=99#PRiU6v!@PI?)I{~WaLgYfuKW!to-TGnY~)euzh@V6zMqAM zg8Mx^1s#X&)OXort7BKGTGv~Mg5>M?D0g!Sw``fe3|MJd0J_mg_5A~F%Rr`zCmMA6 zPq^VeE|ya}lq_!nTu8LYZYyp*Ipx9_xaFFmb6^1q;M5!PX@OG5#pvLJJm2$Uc>LV` z<^8a~hVuio=yN`_4HA;i5Di!l%=VcGO~6)OkK?$3EI9>cJteTB^rdOZ%W!|EWU2a6 zfhPFI%HuNe1lsmJM9K*18{YvnxjI&-USiqhhFrO!y)Qsy^nR&ypj5lf-Bd4gceBf> z<9#8SJRr+y1B7H>lMTf(JB_N&L&c^5!l=SLNT(xpmCBwSJ9i8~kPa zOQw>4#nbK2)G&|HF&?9fJVx$;#nO9(<2kO?f4v4Dp8WmA42?1YkK9hCj7izZq>L;} zP<0hu+Yq3$So(iCs+|u}z#mjXV`Cp-F~T;_VQol6s4$UPY{QEh;y1hEEOMr6mif#}HCJ z1^1JYn$bi`I2SMvf++9%og4TX6{O>Y@V+8S`Y2h~8_eY7sZb1i5!ggen)XBhLf}J| zHJb5?;Q0-QR5pP;uct*l0c5q82Fqq|urjg3_lIcksbIOx3ZXci;AD@V9KZ9^F0A2O zz)IbI+S>)K8`j(DhkgXi2mJpW-e;2l2XG8I0W<$N-)cgH8l>t@z-Zybee(11UO5>D zWotzNVzl94zCT3U;RAfYAN;iXq@PSD$O~fqe9*w)0+=<4;bpZTlr#Q+`IwMMfTa9(JZB=a9ZjBoOR>i7TPLs2 z{T1NIBs&i?_6?v`nOqaLLC4C3O5{r&yvgs63sCWLzUV3Ld?`gqShEkbO3B2A6Oz;& zpQP*42ZzS8);V70P9Qp)UPSt=Bf-c1+r= zV)lYn_I5WK5^%oDAiFYyIxIL0 zdqFV23jqPpVLiu1OvgJZ<+RF|=d-VmVA;+P2(hov zT^FimEbDcuB(Skq^G{*&=!1%v)-nwOt3Le29TXY7k}DSjhZ+hPPW?vR-@Qaxe@A$( zI#J`A$sx9b|4;pjtj24E*TcwQQnhgUT!OMc2mtX80_GsI`}YtT&hn^XliYDAu$>PP z;ara|fQ`S>QozvN1sMrd4qhGbJ=Er^lg~?STce8e2^!^d5)Y9H!HnlZ)Qd&3Fj*f4 z|82`^WdAUfcnM)j#|qh=`~venMJfmL`h}B~3zTm6Lg_|(HZ)9zurOuO*2YuBU`_!2uziDE z?nP?j*DNv{lu6u1x!g~jQd+5sY0HzYrdZqwWs9BEZ_}l_)&a-j@8;5_$M*!l1wc71 z=KL#PhD|$7b;Er@I)RPM3{tC+;fV;75AF8#Ece(X$}dW}F>@_<7S9)-_Q08#8VSY| zf1mn|tkyhLQSWh(dXEcN#Vhv}Sk0;9ILn5b`J*bMHf zd@uo33|2VIj|)6NFSzuFXfH-G0B$jcksk32XZ=4GPGW&BDNkLaDcJH_f7R@O31KFV z2(=x{=Y!?BgPOooT-cXfSO?-lt!ZSvlH_6=ueurv&l(}9ypz(pH<4+IBKkQG!gRi?HWK1+CuTk+3SF{(54(9PL+|G>O`2U4yJJ#)rsO}cmi0-42*FqY-~-INq&Js0FaZ+XyLJzS6rckboLFw$GqUjV=5f;{N0iieZra1D?g zE+*uoH1)obB_DdsY=45>9#=D)?y2AdJ?NeTT*Rz>0F$su13V_!6nbgpETW!R4;R!B z6{gwr%zWCc#~`Y6g1qh*zVuk0Mj56RpQWjXA#%SqUZ&T`1u{fKZ)K^M;hcI4=S7BO zVMrPIpLCwlvk9u-Pl4F`5J_MYexrT|8#@FE*@K*3ur`LJ-b4Z_mM^BA{!p+)4bNuU z$X}pUE#IW3hdIvif8MlpS!*?SI^%pCWz}Uw*XBaM_7`!61^^D@LMZja@3b>Rr)%dA zpA%3!k0h86(fr#^(19|n-Y2PS@}df!wu)-UWvhYR3{jl$VxfGu6e{4|EM-?F$&a$F z+1D5}{y(H>vM4IMGfz$ZpdKc%)mBhJIWY+O-5@n#LrY=9@P-8yvy`pVc{Be^#Ogi= z1KbXSA+4bvEuS~3Qo`c@MP4Z*K+7#8o^OYwvX5DO39QfyiJEy$5RyC)kk|&v)sqDU zo4J5u^Bj_o7BZ-`BOgIX(-^K?+BpvX+MB}yRbWvg$mr^z2${WhQ#zRdJ6%$=s_WqP z{U(dj`)Ea`L@WJ`81?b<{>S_&AV^Rr*8OII4we_Fa7LjV(@CM3lhh88*o5DbH9r~j z+(sU|;v{ukg)HaQK=X2;@PcE^_5LE+`{OO|pb-6DAluc&GQP_CzdaekfZ!zAVHJ~6 zw*cKTA=OB!G&P@3@kiivysrYslS*M?B61DiQ>c&vcGsy$hTkb#*+M<%4{^HqA+et8 z;fOsLqReX0Gw~c+*89pE%N(LI?tHjT9DtzmVK_oWdO)BOrR#wbK&n+^LP6zc-9YPDCBu6 z-+gK<*HW zxCP$#bc?dvvo+>R1Vn<2YPOG38(%#53_Y?O2;Lu&st!b${xZroaCywV5Gf~OynTOz z6T({gQay(Y<`6|ZB2NMDAx0dHP)!57>;@pX^i151_?s8Of6e|oK#f=poE}r%AREJm zlOc*tfwz~oe;+gUJ*uNR%83jg@B7f@LVF0#GRU?=zj~K%Yar9DOUFwzLdN6-#BOgYziq zoJ(CXX2llq-R8lcQnVX1!pW^rCc08Wv!1Zp9jH@HgUw`Yk!JrVT3y_EGj|@uMVwDg zmNOUY5tXFQ@m#Q7id=pmTY85{CNA(ay^_cm9ivw!&fuJfUBdjItRIjkZYG{jI3?_OrVg%& z(j2UKFR=nnwaZKf%~)lC9T(^}f8R?xKbU}J8GHa$5YO;AVINbv-bE zlAqzjOkYD7%}gEd2YJl1hy_uWKi!kZl4F$jLk1n^!|VBQ!yE{U`uwR2AkNngNM+Yr z=?wsgb;!29PF~oRA?;;L2D+0Ay7I(9j&e`H6}S$L(dbfbe}r7as(fWz5HU2{MMySe zw6BHt$svy5V2tWsg7xH&BI^ATkk%!d@lU+mo-9yXB+|+2GSpa>Bu{G+*>A*!^8uqR z=M>F)QF;ffs12xQda7d$wLbjbi{CFkfV5**vi4z1_LCp#fotXnG+rz~=JXJgW`WtD48Q!AowjNgWpNr9bD@FksrMze8p$R)HA7U4!2@|8_exBc_Q>J511Bb_dv`}uJc#vw9 zJE6#N@*}(s_n#wNAGE7!k3S92aA*T;2xYQ@Y^vVE#+6MTc$q~fqx0q0j*3!Tp%zUB z5q(XLJmCM^JcZnF0?x=iF~~ZSO}mz(J^X(&G7uiEC8qpZrp&we=j==r(4IA^9K6P) zKQ}7TK1=D_vNh)uwBCbEgiqLf{>_!$$7OQi0xe-^MIH)N8@8l@(%L^lHTwejd@R=; zuLhfRrA^?`P9zIT+YbGHWKoXna-)%Zf%$d|lYRxkhl|gKpwZ{YwhP-0?TI))Eslj| zg?2Q6LX%wTzX6|g0he1A9Ho_AxMsBFnNg}qVP6!a8ERcGLk$%) zhZ!2IIgzLrg)IR$AkDIZU6WAH$?Kv1YXSeA?t)em&PC->tKx7l^5;Oe1IBxKi?3Qf z^@ZP)O{R&wk8hl!7gBO*2al60f-afouK!;HBfO=12v2}nV(0E2%G8yZCWLHdCa8%l_K^$p-cLv34vf)#!gf%0EE0TVkq~eNm+CzjBc;P*w9# zwz8ip)G_ZE#4U2Q-O4`lwJ-ROyApAQ5SYf?ro&$3N9iRN>5rM!>Ip$ z6PLW6lhvD?|EKhGoWiPq2}52F39YxG+<&4-h22+_Dv0N=NkPkr73~vX_05#or2FCX z1Ieh&7~S%iyB5cX!xr+kV0N%n#2+QZhXt|1WmFOXyHll#jCP4 zeM2Ey;;>+wgMi*OXY0Z^LL(h$0Q2F76pD;{AP)ULkYcew)!aWrV8} zJCzPLz!W0a*bp6F1sHWTdE{ejmH*{hP4^(|asjcCn;Fieq>cDVaPr z7f%32xj^*n!E;0wE2xW8(wz|3J`Rj;F7!H1$TER)YGr@fe-d2dHv-9ZcA~5^X+8Qu0yMOSW#3(|72=v~N<+#!ZxE!RJs! zsdYEfJUM81XH$&6ZIkv?Kt7ziNfYxo$*yLTl3(TLtW8>iS<{j4Nkd=yAd!?YsH38O zIKJMB{`WZae|NBz=0+%hI}3UPZ#9fN#EdUfyYmqY#z&xBiy-L?w0`?*8FDN_>)rH7R%|Cv8A2Q{yo6|1^mhc+qho6nA;{!xFt;1>O5uMlBIzA z3EdU|N^~TCd=P%`1(fbFTq6wE!j}kIVvBYLD)O69ox!M81mws1_1p$4ZN+lHuq464J84 z#0seko=``{M0u$i{ViYwA*$$wFA9`wOBTiL6NxEJi2(nV2eA$MFD~%^V#>8q;W}3R~Nvjm+ zs5}rdOK_nR4N2PlGSV%f!0*6_w$&u5egoJ7GTsN-U60I$KW-N_=5IjlXl`0B&zJe3 z7WTSI5X;?6M1Z87uR_Q8EjW$}b~Ij(`v$1}7N~ctKu1<&Xth7GtP8I^QiSiPUy*5z zR1nsDi2Z*j3}`n{Y<8?nRrFY6I_h~p0=vT&_X1>_Ld_s%b1V8E-hR|}VJE3Zo>&P& z9jo5KbDb1IN*-67R!JSq)lA+0X{)?E@Wt$Sb3QswTae$Y zj@89?&;@SKk#8sb-Hj!(-AVxRZ-lCTgarpS^vWINabLKS_rrIeJozt5RAQ+tz-*=H95KRd5l;x;1f&B4em=Vz%UDgKw^XPp@A%B*xEL!J8=yxj9wd)c* zV6?8Zd%sCn?;NO^X^pgns~{=<6SAREp807kG9;!vA7)ppplYs@{Xd~ZxtqZNJ-<

Wx<8eS!~6Y0erzFNZj`nUTkmDkgTIny5|J`9_VsSt4! zuR>UHIs46LE55;^xO?)o=O5~Y!&zUVQqg~E2H|!sa#)_6a(odFIKZ|z1^C>~bd9}= zBBC!zF#Q6W{d=mS&t)^_FdzTiMrd0_Q&~RrzeO7bvabVjw}YOv zr<`|>Nj3MzYW!~|P5J~^z8fI>Rk14ejMd3L;=i@Oz(~|&kxdWTsGle@zipEaj z8II;#c{+-CoSwC6`F&R4cUD~pwrb2vR`q|+BlbV5mR+{W?i}y^%PPyY5DeI_hc|YU zx-&|2q^N|vAw{RJ!S{U>BAX7F6^el8{>EJT76H2C1W*VSkcez1sCYDndi)rjCHH^f zE>z8CqJZ2)!tijC67NaU{3u4m&!GP^0F7>WfwF%GhUvpuF_h}&5K{In zcvBCrWC_o^?o!4y53$H7X3d0)@k{5YvKY{kM* z84CdxV}k{p37T=cv5TJ&{eCN0JL`ir9n0Mmsp&ohDlx~uV-$J43Gq=%wR-u&sVF1; zeMKK6Mw=JH5%(x8ig7#{C!t|E3t!kUnUYBGe`88HRGfg-v?NE#;oR->4962NAS@(& z`Z%W_+OelN0re3=e+SB~$Eoj5HPahl{GGGaG>hQkRVX9fMs|EHvU=|q!6lv`+skOk zR+!{G38BKbC~|RT4h)#Iq|v0s-*A$?Y*ORASoq%$vrqSe`?wiOq-(6&lVH^;2VA3k zt9q7MRqO%*{amYD*I6}pyH(S_Wv&0$s*__WxlBXXr2x*a7toG=6?L31V7KdF9=M}~ zLplD$wHvkPQ3MLcn&jh*&iLdg&I3_ufOWGaAW6kO#P_UD)MzAStM#>HW!9z3aoiOm z$}H8~N)2c$bldMDK$Tb~r$xT#1ET5j6Ql%KW*>DtQ$n>HbHA0~Ltv1W1qCUHcFRiy zAa{moDs7x4n2Q#{PZFx)w#BfBqG z(ddUxU+OELYgpV)1?U*I`j-IIvdAN2W`}8^fB{J&1e0K*jjw{o85?;S^}1a2z_9L( zoYew-)fnWfj&;6h{BiK)XJ>wn9PpRt)J%2XmZ=8X`Lu><@H}D8?|~CV;IcUjnqT+@ zl4rvau#Tf#1FU)bDSUCrAaeB*U4EIz?F*jUpHZ-GPglh(vRGHKlWjBU02Al}6DaZ? z1f`fjJxri(CQt(tX!(4==O0>>{+&fGEM6;E(Wcr%U}I~QMd86$n9e5tKgX_@)WEC4?f^{;%7L~`UmkHL| zlA{hL*^vT>X3nIe0T&}@7Oh2dH|hj7-ESjm*i_V9$MS2#g|d;AFHMmfk789pjQW{` z7j_d@PDYloHd)nX#C-78_Qs5fV>c ztX_LvQ&CPtM%jb8!lbQc()#jD8ywgt?n$GkQe;niaT_T21G%a~#?!~(tAogRW)Cre zvGm`G|E|27<1n_&nZ+lXIS|9Kn6`QsQ2RFtD$^d>L?|BXw32E|L25G@c8s%xSD%d5 zxI55!`(T3>EkjywBT%b(@QKZ234er0$#vlT?#fpea+_602u9eDKbniP<5Qqv#((N$ z#y^ws-_H0?>B!az#=i&u&v{}hIL}m#oem=QQ7|IGc`CP|@{#%Ad2_6?cN08hJ_MaH z5zplu*k#fp#e!|qX^XAaad2NLH&%V%I?+ks|GH{)+) z7jwJB?se9xN$g_hnFF0SQmc~=!)+lPP>j8yhT84IbgdX8SRSl) zcBrO36smgcY+4ZM74{9vUIk+G~{ELSF3@r;nnEM%yb!vi-H9@zQp5sc+&#&X3fxShVUs_Dv5PFzo5 z0@5mmZ~2Qb6Bgko70vkRGM(jS$0{=lRkJ;bN_zp9^i|=J@k45SjW4z*Ss%Wo+ zjF@qDIh>0~A+)}9dDcyd^7xljKQ`wQkPWjtC|7L8!|;A(1gQ@jX6y_f!1;j zNpfp`g7&T^wZm{t!pBU+$24zdyzFr@yBV(@#>*LJawg8?Se!{C&ZMU;x-g8FAI@a; z+f+j1OlA)f6>l;r_gfyntDs|LxH=fB3AdsbgYVeOP&wc`wlP!_p5-xQsJ1XvMtsNQ zN~^jUrnZ}q?8yK;x)3L^lQA;kB+kY;T!wR4dND>_jM09^$PRyQJbqkDWwx?*(e1cp zx&I(O!Q(dVH5jt*%vAK4NOT^NWMBy9d=-g;a->EX0=EyL=`aII$$|^g4%rR`YBOek z6+~o@Kw$WYnYvvM5X)HQGEc=+o`xbTHG+6i_gP8ZTU8i>H-*cde1c7GfZ@5!N_dXdh}|L>Bd%ss@3Q?q5WGh04&uxK<9{~P}y zz(9QT#VtIW_hhIEcRY@ETs*G%6X~$lgLuVrt(csxUd{y0{e{ZiN~Ytx3|Zbp*W-o^ za2?1poPpzK01BS%SE{HGuPg=&-o)|DF;UgGfShw6l8QAhM}p~Dm{PI5Tg~9ID%kb5 z2C4fi)GLm&T+(j&08S{Z<^YN%pZF@5aqi^9+Wsa&@(?n+Sgt!Ml!r65nem>#27V~U z+mHBvJL6q-6O|M9u0K4aLP!s+IJmSm&Gn3&olfh;TR9l?o zTZm2)PKW+-JhHXGG=zNd?uvI<2S@AISoaBkf-g3$c%YG zVEQ-#XtJoy{scD{0a~3!s%;-`0wx`Pzv7_!e*F9c`flf zj!px+BjpZEqWn&l(LZ3t5cK@5Xt^_{0}RJS#&qiBKyAUMO+i{~1<5DO^Es3aw*{#N z+sCl3{5nkSSP#Q$b0}E(2ZLpY)t~Z}BbNWO8GhG3)@7`Y1jNLNxXVwG=eM^g;K3`v zbE2R(aGH4n<Gs=eG@@Wzdhe{zHpQ;9AdKck?p7_+i{XFZsoBX zW)3*M#JP?+(90a~xsSDhInc@+XkiZQVh+srLXzS3O$r;w_@=TO-e#3e37*b#wD()p z$++)g+z&ABD<&h|SW<%SXslS^H|hY-aTU*S4bNrV?NJK)CtB@1v%7e->gtGaCT45u zJksq;VM)x&)f6n#Oo`P&BBRbMv)@N*c?4mV1<-01MQI-v|79*-Gdv%^`a)2gNc?~R zB(}np5>HYv_TjK(gom>JzXf^$Ya<_1@hi0*r#Uv!E;|bLqlNCocAxQ;6XrSSt1SbJ z8#RONbY*1_e4kr!Dwa|oPEUp{0fKuAPUq}=vSq32{ECCd1ORRfUjxHectfuC(vveL z$3pF30-R#zvHIP_m;t%yG0DRwR>$bdiOm*`btGm_ch=FJeRSs*y0e?^+(LJTEU;=$ z7y-wZt+M`Lh2wR-mTxG5ZXFOJPt5o_3Qb#cwDL`YWkQBpS^b(0 z!Du-@Q~Ae;3BE{zk={9cZ=!r=Q5}h`rc!cOM5vr1p<=`q?O~I{+TVthY5>3D4DsLT zyy$%gJ~zzUfpA+}uo^xK)*`I$oUc}5E3O64PyO#8^}oh#X6>iDS3I1pYHuXhCKHl% zhoU_rRg*f4I5lx>+sUzwF4nsyCA%_d>ES_ocz_;mr-u!XBTi56TCOK;Iy;SX+BD8- zr8o#HX=f2+qI+BE-Y&YgehQ2gck{jl8`VKi4bn>;^iq5p7w`roqYM5|(U}KSS#@1} zWkf_qglI&DL`r5vL}p|}L_}n!hJ?xtGIK#>5)rtUc}6l*B2rQ!BQjqzGgISJGD9Ll zGD9*_QZpknGc(2S=O5eWGF_j0&VJ6>XYaMw%A@xqPqUVlDCjpLY0SEn#zV~WU0_zE zZ~D1feM=z2D3zV3fyE^gg3}24OpT;p9%FMzja5Bnza&;ITVXK#C{iw5E&hljze6+W z2++FT#Yi*ICx*FQK(^~I;sHj+g6o+p^nM;dXmBxvBaD#G>X$Y zF+#13ki+d6n&F4wMI_pRMuw}0;qtX#qI!nQ{9!!v95}E2!~jRxQg0$UX1J!^OJQj& z(JiB;Np;%FXkBEqwlP{IK4iAz>lC++Q_bB=)q^9t*FZAAW{Fneh%VK+u%qP4>nk2< zwr{hkWL@y1cKpcLj5qc$v$o_*O%L=Rp4(MG?WyB9+qFj@XGid9=WX+xO@NRna8{=pjx;JKIp4_xx}QYr~%wCL!9P8 zOu!HiF~pY{;`BT=r0-}vy`7WNTYL~k)p08;C!?xAQ)TrfDV@PojWDVuzDu<0UgJtu zKC+v+b*g7reQGHxyuvp52xq}(38fg;iwx_SiIiswse+4I{urUx1zFVB-hADb7Wl6{dFf>GJdXt;S$9W(Ne-BQ@j zFsF3R0v|`pZaZKyuIA?fiDFfMauh$bSgZO#!eIedf^{0Jq5Y!sKh6VP`OvJSX=0;M zXI>&L_k>Apa|uEw(wh53nOqBK$30w0YgUQQF)DF)b4q4Zrn<5IuVPp>Ff7dsOOZLB z>^Yv#6X>%#5zF63u*k?bIkJH;GIl{cl8j6%Ba@pzV7Z>4lh|PkqtngkxYbt6w3dLC z(dlFLJHqNWtp=tWMx+DhoAzyrN^m}pdy#Qr^n86eXr5#Uw=;wdx8v=b%j9r8ML|y` z!G23jf7PJNIARmQqxlwK)HvfA9ISBF4G&;Nc*7mvIgYL)nH9~7;+oW2sLBVp5pmmoy8d-8)Y-hVkaF+Sly>kZC*s# z0uy%eFu6Ny3^wBqO0Cv#c-)SbyH$u0+D+mQ?mNp zSSN_>cY5Q=40}x{Nykyp619jqbFd}rz zMUZk`K)6p<)qQ|7hClVc;4IoIdg1>~q7c0=L#|(E%bL+JD_a4ZeU)t9S+1%TNM|hK z@%e`qnp@Fsg-|^FzI514Ag;Hi+_DqG3R@stcafkNpQL`St#_geH32$SEZPomx;?+s zmZa48i6x0IyAGGA{S6L>{mf_oqbS|^fq1}XJ`WiM=R!9V8lRYDCq99#-WSQ?F<$03 z0M+I?@Y7<2V`q;M>p6$07mK_fnzeD^D!CS~Gv8e25Qiu9ZF+%TuFy{AfA&JSMkdpa z=ToLJWyrV~k3l5O{2${mU^Wo|@w!}@I18-eTo`zgjA#!Dr-{UaoC|`zXuBPUC$HyG zok*a9kN7>ZL|gEYz4%B6KC%HH@$g%s5vDBXkz~ca0_PK=c7BN3ZAHK?{f|ruSs$-V zbm1_gI~pE`!;`he3q3Y$ET}fq^DMIuRjXk(Rqgxp)sV#j1hX#WKQ`fvvjGn#mg>Aa zMdyzTav=lcVEU9^wXdlkTg?@P3^u~vikhcGlq z4=rIrzcpTSxOSZ+F^%>Ag1Lb6$NFr6 zT?*9mOL@xdrPV$qO_w*IFU`>J_e2Gkp|_Xc^PYxaifL$K8f@-iwcJM1ifQoq3*_Wi zsbtA`WGxVwW*WBhsHWWqKE$d{mw80J?nShYM|AoEf*c;vP9x7~1J7tH&uA;pXc;0y z;a^@q?SSk4I!R_TIYGA~uWsk3e zy5-wQZNb`mnY!EJHQNf92iLYUV8*bPUm>w|W&W*PX$T%4t|sQr{M&p*rh;7D2rejq z7K^8-b}ph#mU+v5woKVcpc$FFOU#|84aYKnj%CpRP?$Q4dw}t+2P1qV2}q_c^c2;T zqbAv$hdJ*D4lsWZ$nZ2-K8kdAEd|JXa}cM@~7ZPTp@* zwE78~w3NB7CTdzD`wtl5J66E|nT-C=Thwa&kVyG6N!x$ru{o2d^H^^cQA-^~$7;^` zD{-t^9={qOwAck+ALe^ouHoTK$1$eE>){Xp$voSyKthX+Vr!TNtCg{8z;^XT%KZ?@ zEv^f1k5?}?#FQAF;P`0y4fPwW(H%{OJK^_c8b+Chi7n{CFb!v!h8e*$jXNX7?Ms+7 zCXK=(Ps0%1vrNGbrr;b?6Z$Dn5Yup+X&7Z1?E1(lG7U-NOEl;0RCPKKUu;ihgg{qZ zAQU@D{?~Gdp}mC+hChb_hSYF-9W9vbWKMOOP*3e|A-mV~I-O-mI~dX)hV&%E>20dk z)VgX}y}_=?=GD%e9>8$}7Gwjj&Q{U|N-{r_EjyAT|2K7^^9ZuBIw#n3E?T6fu+jSf+l+qmO6jYTYtESuOb+7MamF zm`w4Pz4(g3d9wor=$W%@c${1Msf(Y5vldZ(YzRIK3Plf~A$$a)&vnt*J zrvula2>vb#?RP9G5-oX$aIL$MR@*36#Ay1$xlTWvk60y42p^y!xd8qT-zX#!UBGS3 z0wlN+DV9@}8XTX2m{^9o;>*>~oL**5gPW1iFk@q4P6JP~$Mg8iu;ur8dRFuF1bK6^ zy%Pj9^E_t~WG2kB{d7M0-yo+C;>=8QjwMm^3rjS>)8p>EQWtOM{I`j@9$~JVnd@QZ zdJ}V<<5#EI$;|x*&Vf8W2ku?UR!jwi`L1WaUEW)wpsxz$Tt~Qlo@Y6^RFnORwG+Ec z(9-Qm83r`G*^OE1AW=0;XT_DPo$JhtB&kv;9QeS7_Zr73J46K?5R%S>kR0o4X4`!O(W0vq zwMb59Hzg}Nlt+|2gLzi9j*ubQe~kt;Y;bfj_1{8vE>j4FK<)&>UhHQ5Hq zwY)S^XEYjz5=Lz&F~=}hq0S@3yorUHu1{xDWLPx%b1`jZlxE05R1 zG!Sr|J~l=>ZjF&2R{thiK8+zD;y4Gq0pfLSh;}qEjSq&S1xN%n4y_mZ%Vun6lZ$|K z)E8)1674*X^R&GJ9fJX~Lt{gZtYD<}vxC!bKE0VK<=W5uon`)Jzl~?#1mueOoAoO; z2%i(X*#Ns)6T8_U^I5@eHgP5BroVu2O@d~7Jco+u<~7bh z5_u!1<)J#+qm0zX+^%A7*D$y4ZR~8DS;%ZwAkUKw2N2lMe^E{u<#fz+n#UAtl<6D2 z!3fVB?H-U?Y|F@l*C8`ct6S-O!z10e`>i-+9S%8`8`*<{jo^?mju1@akkh&Qbr;zM zamXz=R>)bMPjEx^9KB619?%i>%kbLZjGTt65D*X}y@KCLGq<#NLjr z`V^X-osbe@c2{Ys##*k>%svy^HmvyxxB$k}gpT#u#whstVl|r6`_oO6(!me~aW(qz z!s`jB(}7&?HRjO`16gn-n2pbka*MCvJiz|#0>~hpFzo3fd55#`q?M{-V~+OxM;LYw zU6a8XnwMG5r(|K7w1N&8FoQVmn0}KwaonKZT#cEI;24g&6-T{{qxw(CQP=bw@;`X$ zemvFRp+rtCY!-OxMLg9o1B4@msi+d7aAlhxyu-PwRFwa7(jfwcm&^u|={fZb??!O?1F8ubuqt2tT{P z_ig#P^?B+BA9HH{I)rlp1@49j^6}F16&+>agGiu=-$R`S^hOsCcwbFe?B_tATw!+gnTB#j4(=nXMYXdxO z<|`nfC7pW4q|r&>`tXyoxE| zHgv(6b58Uxk)81tNTX^wmHx=CH=Lr(?UdZ|IC$b<)1O}^yO&_W`;z_q!4)v#QVW^} z{yzh9$`|1P^aa7boO9i;6?D;2c*ObaJ|xdOjy?Y`m=i9e^>(*OE@x3b`Hc4ufElxo zzo+lp5^#cZJ^T-;zmnrg1ea}xs@a7S`Fw)zA9FplC=)bGgvM@!=@RQ7jFr!ilufbW zNyv0L(uBg*DJ)*~*w#?mYCRw=JX@@jkJ7%0Szt+5S#17er@TUT1T*suSHPXMN?1{Y zgi{guzj&HTncHp5ZT)WOR`yk?FBY2pe@hg(izESWkQ)i$+y_r}=+A@{q3V;tXWYGhen&${v15}BHdWV4Gb`vwHf zcM+Gx>>O5GMT{{FaF`!6raw&mkt@ zYLG<-U=?m=kZZwSFk+8}${lNR57k)A^hl`mGEc~#peGyBw2t#yMT z$ME{h*-Nyc8;-{xi&Tf#w>-R3^Tv_9F09i!ynfzm6tD35=*L+NUjRLmdcFSt4w;DK zWWIl=D175e^q%>J%PggqK&af8BBfcai`Q4iCRRo~es&jCt#4tp#^X2O@iPvl$l(wm zQygzQj%Rs4;TPUMZ&tCI;)@}t1)@EULn}_5`aX)dteSC3Q6C|n)fZWi!tMd%`(c@4 z9)d`K9B&Jro#V)!zy{&t13qwpQ3ZIj*_jF!opc3zl+)|KOg1B6IJal3r!`NLM`5_R zIbWC9NqbmUt#2rmPbUk^bV!MkU`p5*4FPjh16@jG7n0VuBTU)13GWjVDisYGNR{z6;cW-%OMLA)~so z5gvS*@T?q#^gzFzq1>1Zttlv{>77dXx8RPA%VRWm-F!)*7ZY^HuV{&CIK3`x4L(kc__yyykDXdzjN^ z=Cs=tm8&g4qD;rss3sB>z*$o$s4SgffD6fXrFlR2JqGv|aGQdGAxMVFY) zx_t0sZ<}P>&Z@|i`rnB?hBDT)9PMRlXU``8dxg2(%SyG0IdtJT<=0rP^BpiAY$i`X z9UiEiBpA)0*!;3qRSf&8)J#QxMNc0V+6A5RjiB4iP)EXY{gB_p%rNVcc$Hy|#q|6~ z#%OOui~_LjFT?v308Q8YP}whp|D`F;pjCfULb(fCowva4d{6ReIU0X~CT*{-QRG4d zCzh3I@+UbU+p9Er3WbPR9#JFRFS~Lz&yk|T#$0u?Ng2L_a_u)0tcaZXT1neX26*-v z+!0SKQNv||)?VlveqnlVC*wYc+>)^erUT|P$(Aff5jYLz)36$JD)VXb;F+Dp+%DmH zZKYvsn9%%D-kfMI%$LVHFg(otapvCq6|x*PFk&)k^rLNNqg6fsc^+V7fOk-Tub= zIbt#2USUAxo*>|0zPB>p9n80P&`KQx)!4widz-NwPbY!I+$XI9;l$kgd_XFNdB4KE z+g${R+E2=sx$b7JlU^#;m^sBV+>okarq||woDs)!G{Xn>-~;tzQgnssHm-V!Xa2z) z?ZR0+|3id25Gh{gWpK2jV)`m|0fv2qVL!}}HKb)~55qmZhoQ%UE#lORExd*6tSI@t zNXtFf%nGU>*cFEUTnthj*ci-E8mg`mR?jjXW6XJRIQ?JtwVJq_&4fp&i$}@t<`p`_ zW7N)L)blNS!M*GSEF69_SVp-~4_`RLR*_=i6XzaFQ9DsmJyB8%pZ4UPB(uJvUyR~X zM=3m?Z)T{%J0BTWz$kyDK-T~-{5mRbHeg3K=gIsSIoU3L5PBObD74H4^&%W{z0r`C zxsnVV23wOJBU2N1{Z^>b-wXxiiZzDHEB-oV6X@sv@)f-)4GfV{hmqoNSxxB`>5Z9p z(%Q=h^SzfNdJD-6K3Lpglct{KDBnjOk!^j4@qWr_I8o{pf=Qfc)=aipoTvvU>c)vS z<3zr5Nh0DrNyk|GPZdeS)b`zhPmCw!QcP(UA1ZqtNF_ehgbx{B#9z`l1-(n@_Ln-u z>xg*qpR*T;fdAv`TgkG{xZb9>lKw9oY8Z!_wr+{`<4^$y>3BN?Ni;)j{SSLO3rG`= zRlkp#-Jc-c=N9W2HZu_i8v{sTJV^!ig)&z_?5rK`8vw1C!1#WUt=2EH)W`N-#ac3B z4&5~`0?(vH%j`F#90*u_kFMbPXI>p#$YL?CtMJktc2f)@2HQcbS@(E?4(!NN-%olmFo)Eu5UB z4l-Jsih0vJXv6KV)lP0Y$%yvXX$b1E%UHh?y6^Wvy^EcXiBe>2luEen-4HLgjda{{ zHD0I(-#H!vfltV27Q|>3*8VQC%2-V+OqGe@GF>H`)t07J!)(We;QRU1jcdU7M-{Q5 zAXw6o12ILF%%+jRO3sj}v|K$?OH{In;~9<}y_@|7$M(5G(y5Pn@+q2F?f@e&cL_+8 zM_0;f0xKS#966O{vNfPs!bvL5WM#yYd+_8zJbByWO939DZ1`HWHsh?bHuDBJ>j2K0 z_8RqnoOL?wmmO|KMLv)$)4XEs#Yr1*QtJsc9oKb>=nO8Xb4L_Xsh9a) zFNh}(wBe>x`Mi^9ETMeE)UIP{>mv}XV`@EKBA`hp|DUvpBRH$nD1UH{`8~q?9$C+6 z=0kvE+3fjq$#TyH{l=oPWfvSDk8pfCL5KSjs2?$xJuEouHnZ5g1=a35K~7l2O)wf%ZEL)oxo$0r(G08; zhiv8%y~HDGTUM^Id#Yq~>x8xN0Nn2!Fa8C>V)HEU%Ao;fX9AZEVJW$y#xIJ;|%` zE@VFXVNN|1N(Rgrs{YRlwB!3^P5dlRGc0H_FawgYIGc702x;T!<1U48>{^s8zYJB? zet3OPm%n7~E(v}=r)#0wfd%EU{N4?k@pDeO9eLV? zS(z8;-1ao}|4Ct?8X}RmYji9bP*D}U;N3i~ldDii$&giTxpF_xMTBmJ)JnVEEh`js zgvWfuq?|QGP?zcd2!5ypYPD3&o{EOc=WsziMfzkE{ANGx7r#=s8;4T{5Q;wq{{xR= zQWF{PA?P@-K)n}_keDA0Yk#LJ_t7LZ9Km5HmCE)+t$Y=xX{*Q~nUj#dnSL^?RAM9k^m6tbMOsxyOd}a zAG+gy@;|P8>K0ZqD?as9KD9HS+JaBLj+Jb3A3a(>F|_3Lhi9x*upO&b8H?2e9MRU2 zCyZo+dXi9U4xv^CN4EDk!kwfV_6MQ-O)E9}H!I#1z8*{X<+)S=;|S@?2vAp7YoHm( zws8w>7TxsaLozV>I$dzg$+RAlgpdeagae=^uvnc*#R@bd9=!AV)=9g?7uBjc4^^WZ zq?B7Tq(btA^!$f@nWcvRmC@mlOQNbmo7SQeKe$3iU{i3XU+}>5M%8>o3Z72**#}9( zyMq7e>LSGEMH{{Ua~z3g9);cZcSI!e;dA@}YV9N0Bqj^_^eZ&{`Ss*88xvvI=|2*+ z`W`SqL$wP3J5*^a;f)d96gME#inTwA7iD3Z7i5?o+i&y%%NV29#3nj6|9_Qhk{1d?QpC^W#vu z1ZKH93XCSIH&{m>A<`jK?YLefeZG|nN%YBlh5k(;u>sufG$gvlnzZ#pT6b=T{eD(~ zF8f!iXb8o$pDR#Nqrd+g{h)9Pnipp&dXQd1cm-YI6|`%iM0cf9RXtfcXZ)HuJ4fKS z6{Z{V^{wRVb9<->ldtb1Pw&?lp>FH~Y5Jsoa`u?Zol$hOL}@!I`@lfZP}nh2_D;ni za+ngX$fLv(tfC1&Ay|wx{I677{z8PF!nK!ZKoI>ueRR%oHC}=gy2LqORXGXr3n7)d zC{^=9muOQ6`+Ph+p8J+6_z2MJeAfK`SUg@~ZHJh|A7YY{essZJgPg=rsGMY2GE&g@ zOeCK4p;`4jSyLy2tX^l=`@K><6s~jK!H>*CD~1C0EN52TlO+_LsmHcckInPXqzyYl zf!W0E*nY~e)3?NG8)o>6_8e@KlI%P;(sS5xO0u>ezzc)5wUcmmiO~q=oJa*dAw)B= zK*wL-@!>`%~Qo@4o~1JU#+KjihS9Ok@p z1)31l{PA=Ho_>U%b@DsIHx_6r3(nZ2BBfWL4UQwWIV7T#Mi1a0M(uqQPT(70R$UuI z*@Y6^8}LD6eZ1~C1dqgb!P<*;82f|egV~9OK-jN#J(8+uq&6CCA)$DLuBaSK$-T)ct1H^^ch=TzvIeNn7C34utY5K!VU3#8^wt@71 zCnGk6syHk<=R$MIq;9U_m~2vRJf)N0VZWHd{O^TIyR=rOmS7d#l}SA~LY`ykT*LZ& zW99oCE!)^|C92p}wCr=e@C94yewJFUO&yD6{eOT`xmvZ;^@KIQPY>xenifXU|HdZr zdd#i#e{TRhKFgiN!#qSM?;$%i6Y+sjqS&#C^2tb&-48Gqt>J9<075fO%QS?;xq|nd z2xH2^bIX;xBU3$}kpJr}k_)Tg)E{Z(!YXhy*YPByHq%}E1Wfv4pyY#N)C-Q$Hs54j zSxiq^4EewG*i^{C6J@?0p}{B7a>DBQgRwLDqbi1vMd$eUR6_00gJ2!yDMhE?CY$rH^Yxn++S-3w?(#L;v7 zKK0+@Z!TrKUCR0op~NBjzE|NqI8oq94w!hq{Zol*#x7iCH+&lA>K{qF9b2M_Ts^q9 zt%c|3K`?_zcKL&d-d2;Myral20=uvJ9*`-{x2hFh**})E@IdWjU7}umAT^T0rg2X- z~lC|Bw;AgkNyY{2sLI5v07Z)4X2zSTgy)n?lrN7NV(G z(AaQoKFA^RURcoLkWDWnGYXM}_0!2(6UMn9oQ5;@hFM|6gS_tHT7LscNv5fVR9+QR zW_lUz7zYq8PnOB<8oxIR8_Jt>#2l+oKW4>dH0cC5zrU!A!})TWVRZPSNSO_Q$=-k)idvsrO_BD0 zip2Wy6xHCsC+Q;?z=?A*q3wT_{$Svqtw$;qdbmP{M=N#qQDdbJ7ZfUY1z@rm9>v9I zI{ipW<|tbw(T;yS@H`&PfOmk*x5DKLMb{3fx(>tLW&at}T*#_5{IFE*?fB1n6f&Xb zTGPa$vytD!`F0#$s;#f%Pt8l^#OsN?cH;FV{A>h2J86XbYul%V8eyJ&SChS9o?G@3 z&+$5_6@UKt1wZ?9VI>W9l=Ek3}sxjur}s5h|zmh()6E-fcU$c@zq7Pu!8 z-Z=WncN6Jcj+5_yG`4abCU?|+Dp8x3a1wSbkTKMnC3G8fxDUX3YK~GFJ}@}FR>A>y z;fz+X(C^Tg(8^Gc@m{WmA=U=W>t~MWKhgKi(7S#?(t@WY;X8v`j?$zuxLA>iWYWSA zC*Wk&P0(RUa;t^_rJ)4r6|90lrT6Xv7L`mC%ddgo2_p^w?Pm5~rZ#n#%g-Ff>Yf4} z`wTS`1jV~->0-|y1;27Rt#ssd;RbAfBwFst(XtFgsG^KFEd`W-#W;s++bNn3Pr!UP zzEX}&2$J)@4qum3dZ%%9SB2Vsjne3C#uz%D;Qzl7Zmv{xda&*#6pj}W_1st{->J14 ziez4YhaG3735*ERJSXUiE&|^JfsEN!eU2_hT!63MOt9EJ@88XENmVDNdVwp*mjW0!&K zxIxDUP&(^n34H}Zn!9QM50SEc4^6)X%P2^oa0Q)G<6LOi7ecGe*DbaP48FlxfBAAb ze*?q%kD0I|!Yc{wwpDJW2K>+xi-G?yJcD^z%pav!$~TI>uCz*y*mSP;27`uz87r$& z+aqB_T2d)P@G@;pgpPe<7LgDAAN<@io1Q;@9?8#-z?A90&ppDHsldSd?OCin*zh1+ z;O`b{dSkl0K19y#-dcG+M`rEQYNMvcELGhOczhP~B>V~t>ol;5PiQ{)D1@jO12WSL ztMR}s?D3W+C5%Jm?$2zro5JP44a()ia6nH-XyPDL9k0`{h^2A9_j(;l=HH?eb1Vi? z8{)x8gXT;NSGX-55jH3%jswQ$VkBxkRi@}!iE4iVSj1fVH*X~yVp%LdQz-yLgDM^d zlJzP~C;Q3ycEW6jB`krSEg5J|d7|dP_u`ts5&dk6w(N%SDwNFEN1)MwQ&yJN&JV_{D<`fqo-%X`HoHFKdkry3BGvv-%nGo z;|<3$I=j-SmaaCa;B|v?BG?nc>1vvoqQbpQbf1jq%7Sd?1uu@@LUro^L z1w0Ygk~OnCk;(-zz`h!d`HdAae5sOp(v)|Gt@^h@o%<|PW5NKmJqFX^jAE$vfN4yJ zD}b-vU#96eg1S;_rJQz?;JTPZ>ihuBr)36>U<*k`+g8wYQdX!Au7Tx+nwP<k1F-oa3;P>HbJH1ei*g3vl?OLeAA>;>- zrpRR^MZGm_%L80(Oz=7pGxGZMv#=eS5rh(`9AAJSF}XyS%wn~s7AwfWO{IYU!DgSK z5cL~Vb{G_dkwsyD3Gv<$8inqzR;oRycCI__qG*_uuY$yUnPSQ5#^lRAj`Kl$K93!& zrU^(e^YiXx+H;--8SPW8O`o$*SRvU(8P-Aubzq%2Y&7Hrat~zb(rb+Jy%Z{Az=uyl zM|cYT9~N5(IKG6P=qrO$BHW4nzc%KM*0 znUeAD15w%^AEJ4fFUP8iL44yV=*WX~)px;m{C$*6hY_egmZ(cX#268IY6%9WOYUIT ze>AF$BpPXvPE^ahV9j|sSWN?oiYr;F?InvO)z1;nW&yyXiOYR*53O`?U=6T{~@C& zOp$X?wX7FV|GSWtB5SPsg=!7v88ozl(OAwCkzp4Wh^}$qqO1t zTPpX9Wip*6*ZT?JrFu@p-z=5qS4-9F0dWPE_V_X#o57X6VVw!u)t}-2xt6H3J&AJs zJW(}EfMprsc-rt?l8*3bm;#u0a{bL5p&eHiD!PuasupjLq6~vAyhLUDP@*dO2}r-? z)A8D4h^hFAuYXR|SzZVCCCckNG9uqost-X$=_cqr%%S3IV3ZxJmDU36b|Vz7_N)id ztp77v_w@=Ov&9@PLzn47GS4R01g?#IKRgBvfS_f%#PtZ*rdWvS`(d#jB0&)gK#l#O zm5t;q`$%RWn-T9*7edEGQY8gRDE3k+(UOM;WND?m`Tep?_M3S28}^OEM~jWJKFXsp zzfi4#h43}eQoEp7-g}6MI8vQ`r%dZUfQElF^EaOs`*A#$ww(L!OOs7bvKp}Sy*%3- z%`6V3=?c;GDrY)o)(|bd&VJwkG!Kj10wa1b$NYuGiW@GIxIsT|FfttezgF&W;$n&f z0adyfMg8aHDnjiv)%3I8b0dMxD`Z*^nsp=@N+t*>|6;2>zg%b7>$e6n+>hhU%)4ta z7(p{=ysoCnag@JZz=sMdRQM}}L_bUAJElwpm(%2X2zkc;(o_*pD0}0}@NvG4X2*s^ znPKKnP~nvQz}v?OY03(vp(lVJWQ(N=w+M$KQL zf*C{q=i4jfe3a&4-q59q)QQqjM0yMYnHw@8jD+j&hwFN-;P~!<2^)*HL3nxrUF_KAph)$sBFugb zGz3?RVs_Jfj@{VV-NDM;6RgQx8+WnD{TC)vN51NP(2_IWQ6#5_0Es~uSSlftvVuv8HZcEMwkdz@esxDhGt(2nfYYoRwG!wvS7`qryyKbO%(`JOqFPZ!g5IcuX z+N&|QQSv^R^EI@^y-~_|2BA8x0R{1J0>*17Kc1!`cfev;GY~tw5G1&M36(FlDGSx3 zF`Nsw(roq?&1VU~XUf>a50FrFtkQ*BSWm-M5oK^J<8A zuYeQ7!mrZa@pzm%vDqG!ZI?$O?-He5IYw%>pHQ>Kwrr2r_A)-v>KILUJw}#e!(gaD z6%&k*n*~tXPt!E51?k;X;JP(s>KVIS+27DTb3fS;ciK0ysD7_R_Y-#H06Vhg2T8YG zFsdN{&Sw4$HiaM&svkAb&_FFpo-j z-m%UKa=l+79D@z*N6}&b^&r_^=J48pCX-0ntLAqo4+F?qQ z=O<*^A}W-b%<pjJyFJ?>q+rnolmK@OUgBDxouFh=!DbE}9a)Bp^LQ z2g3)o^4Jg}%a^Ex7e#0oODje%U>AA;SkmrToxTQfnWB`+^^9k{VxEduD%ZHr!T;_7 zGd?3+(@v28DNB>(Za73^$m#VisUfL|>Saiog8t!oZO+lqB@Pb@G8DPAT(cH&L#c#Y z_8Cg}qePiosf2dW4Kbh7OnrpnUIhb)jdqdwI7kMhI~HQ1DD`54w^8SN5ik;VVHVeu z1{hLlNU@7i!Ch2Er*Qt;J_U8NF|yebX$(;EjNOicgvKX29|-Db5zeH zMKglsa$FxY?jncB89kco!hhq`hYgaiDfoy4;tz}A_gO5D&&X)+43Rm*H{p1`ib_dN zen#i~;tIJjdSdi)f`MUN1UbK+wv2xu8DX?G2hqZpR<4?bz;+nH;1T)@{|BO)_lpk5 z)a6?ApVR9ibOp0G5GxaA`Bf~756dhzVu^^DKSPI&!L~xb>~kL(Y|Q*$){IL)=yKux zzNtX{AA^9UAX!uedX9pm4+Y8g$}+Xz3J(B9$xZiBilHc(T~n^slF&zNGgxRFm4l-YLtoPqS zE;Si)xqFe^bbyBVHWu9uFY^E62Ph-*_DXT*;vRAT)};i?(U zSHk;g>RVf*m}o?d3qezwEmzuJ^1$|02vg9we3H>J7PCl%kyMCFk>|Kll~L!f*#?rS z2p*raP$prse~-}Q`_XR19Hz#}GZ8f_>_7r2*LP7)!kVb{+vKN6dBC-bS-?tS)apZ? z7h7`zv7*iNefp%y35wplZ6qa+86D<}Vp*>LJB$=pI{!mHR0wCe#l>x}<1$n3|(D!}}2 zC0D@v)Nn&PxuLX#G&sY^|JP4KlbO4@#DCnuf4r0bcvlmRN!(N&H&-?fg$zc=55kD4 zZ`4A`7NTkJMRao$-p^5}!u$&u8O#UXh{nBCI`-kjTpg~VErM<0hDJ%_xPNZYC2l7D z7$Y>9W0;YDYHY&k&CI85GEMCZ$a3EYx8F0UV3z`y{+)Sxn=Tm$M7&={Fywps02*tx zbqXUgJyYlBAgwSLC&f$^vATp6Rl*irP6M4R<|)9oMThG=(Ch=RBBvKtB(uCS9a#uaX>2J< z*R{ZGK)x-{)P|)9j{wzN(@n~yH(8hdA#3(E35!FB&-Ep%z6TAVmpGix23hwa=S5z- zd~1YI{2R2su-W|b(6{t@eGgLY*CbGj@PBPvDYLhcN`AWnl8Ngl6Ln=b`QK>3rB72yd%aZ7ufTkbl?~L$^C+G_p-{d5(CXF3O}q~y zhVesAuv-#UH;>MR5j--#P*%&(fUu&Af%ra}*uLli((zmA>A|d@Bt7#Grx{O(h_OMJ zLRouoMtq#e*OhL^Cki#Di$f_k=Z7>M=IgwfWJ?axIg3S-bej4~2^m*dR8p79czFsO z&RE;AFl6`g)$>%Etf6IJNL1YJUZIg`H9CBmIDP_}?yuzN*k+!PqdA&Rv~2MKnm z36mfec0jfG$1rVb%hxJT*bUN*@|r?@?~w{QKfw9mU!+-V%V56DQFtKD=O0vRNJud} zj%ex2<#2%!OTJIXYbrQ#N4VmyKv3HgF0*ey%3%|4=B6+w3)Gfgg5u{TV4FyWS1H5>USZw~c4%nY-uic>wdj+-$z z!UM-mm@z`U7*|y2BqcS=@&NUkThqL530@L}>xH2*pjM8Oq zdde6P8%Ct*E_kEls$}A}Yv?h8ZPXSI=7T zz!mU=Vs4A!fQk;$Md%iG9L`6qDorCFuzx(mDQRJahN4)w9x9UkiyUU_Io_QnlX9Nw zc_4=#KUcO*wB-7Of9EZG?$JkuC14; z^99Aoa{-8la6-8-BB5a7{eNJ?Z6+H+H^r(&MT*WT(*-Tpl}~fja7PuOQfE{QX{k7E zDrcDl15WG3rChk(qEITkgY4!z%hYvqDP$qFfJZ|$Cj(*0z6e!dHisg#Z7kG$x5a5Y z<}eqTO{{fJl)7rbc-I2q;ac`M5dVZ24PdVMj8I;v1|pGU|JRtW;g&S;dvL$7scg=# z(7O5>)rCSLzJj{IZh}SID#S@38;eO%?yV5e^bpDLCRRB#A`M1p5KH(G)We-bLYSi+ zezJ%N8auNvN|V=ezQi`IAxuk6Va246EGblE)JD9FT6vkSTR(qYC$Cgqgc-{ zdA`m3-GHd@&g;CeRl34RMI$6uPzZGLs8J3<%GQ{ErRu2qIsOk|S5YI-oUJH^XN8REicR#^^9s z;Dg-KlxVG~rOeiiv>N%{S)*ZEx0l**2${0yYSd#xgWAJzy{E(Vevs1YFFEx665dUR zf`L#w_(cNTE*`sD=oh{wad96^+YS*7`y^sIObcU`jg4XhO@!EQMJk4?YU(&h^$@!0E4ZJo}gDKhHH&TV_Vc`N;^xBB0~TgbNb0&*HiR8a}w-?6{6zh*S38 zaVq0#@jruBAA(G_p9)uah-P56JpWt1Ly`e{m9|KZWiCZJ`vStn?M6AW7EFY0Wj4?K z#X9(;PI176WyQe=&B{z@R;IBSn8swOai|3LBZABb4x`?bUlWPzFta4E9~;1aYy|s( zZ90i?-Kj{FjmR0?M?L@(Huf6>0gVBv}l& zz{DCE+h=f>fn~&ItOE@>u;7yihD>Bf0D8}cas>ya=t4LdZE7}KPs7{wJ{>Y^`LvJ` zxEDmI1)FMQ^mafrgiZVuveEz8Kdwa5PlSG;N4zFJ5w96s-G>RuD7ytiMi6>4YmPA) zl7asVQ8VZHgvSwzCpj>yoOPV!z-UZ`($i`*<0;xG$qk$#H{kVljxztHet$Ow3i1P& z$PZWsr%-$Zh)8Z=l-xis?`H^vQ*0H~9$4mU5h@}lFpAZDjZDYwB%rJju;Y4uHvJ!| zFU2c+HvFCD(62hf?}4p46rzd!6qKJtR1Dl-bQO_rCUqTe`hFwIWb-d4T5x>FuCSKF zfN%f?gyGC`4Rt`n{(?#K63C8mWA=ZQ$Ync~&hN+rEX>s2CRWt9=$^vP9wvuq{61D^ zFgyDw*zKdV;jSq8FSy=-O1vHf>Byb5-b^6-=?aMK;TZYO3{^L_KY;qpU*vWg)3ozj zSkAJ@fR(Yn&xiLt9o4gK=su3ElFKMj5^1}j#TiP^FPC=&g$~NRHl*VnZY-5CU_Z`A ziNz}=6Ld4V0L=6yOY04IIyQC;0+i22X@YN*+_<_IvesjJOeCTng*hWEMyIj<|Aor> z16DLnzs^wdnRBo$2{p-s6L2qmBHK+!^Za6z-HKFIWRp*Pqe{cEDa3c6UKE2Mz>}0) z{{bBSe>pPURV7c3$TbG!*viV~bB1%kue4od(~e6{F#01l6mo*c$O-zE(>eVW&?<6* zC6@4myFo~?6hew>q`5|nY`+916{O#iIL6%#yE6H~5#H|r`N6|i@!UD15jukH_lT4C z6A(sYZMk%|uiz7NZQc0jWwV*r=dR6x1Hvbm^AKKGWYeYjS3mIR{Y3(apuo*Oe8%i`om%!t`PAE*80QSu~L zIEU-8FW8>eYs1~1aC8{lRtAJJ!!5E_2 zH8y3+`+?R8BHO0+O8FD>TN3j-zl?7X;ht|})l8{X(u81n6X9+-ND8kzT&>tlGbDO2 zHv(O!S%h=gmKP$mt(4qSnUOi?#nxPUx-u5ao+#IDAxH8B@c7(=tVVyn&Sa)(pp8P6 zH$8$uWJ@AY#F$p3J^mCLYRUhetfVuJt8E4iOBtFF$3Y|@MXP@*QN;#S&la&iJk4qu zM_g2et}#r`rU z6eA;S8&F-xa-1&4?%CW=nwbeJ%0- zr^u)lvow5Ko6+I~y?wzZMbp*TwYmmy3C>gi zd2k13I67GulD&+6AVZ!>8CqCUE~i++DC<(4JH!chJ3&p^NYjihEQB4d@C>Tzhl*k z&A5m}&*M=tc+mJ_>4>g?2`xpA6rbjeFV#By zXqflig&!GPa3K3XDIj8bIM8`4*M+@5B??3gX9Fzm{df&xBRG>)5hH~S6sOR|iY_ST z23#wkvs!iUkV|SMcl<7A1i;G{|FAOx;|>U9vGQVFxDEXOG%6?t`bEE})cK#uK>J$2 zevA6yvE8&BC7?%5IQM$6q=V+Cu$TyH?yg;z97Z748x!_I2{Pvleej6ub%*zV% zi-r4-s^|06eyUltuz{*bC45Ob2RpN$v*BC7w%4(3gN8PJ0Q&Vk{==)(dULk74LhZ=c9HNswjZ;o2f-+Mfs(g;5btOye@k%9)T#29p;uG;47= z%7;c}dzq9SSfNq!#y*^+1Aju|>8)iNGgzXt>&Tow&Hi6Mlafntgd9VN<*|U(u;5|- zuXENvLRA|(^L?Z&#>dm^&FW^$(!1ZFJziOGyg^EiwZ9L1za5neu2&e%Ax3k}D^yFp z3EyuA|MeinDMqtqKSAdSo|IcM$QyC9q2<(n7|tGsbFwdW0PB3&9Ya#35x^nCxQAhM z-W;sDyEEl$P1ub2-N8-15DQ!gUf5`WYz76ycMPO# z*hxPG36Gh56s+{E-0-C^89wLyKRpP+;AbclS(6%ZDbvE#965ejsV&^;R7Bdujt#Ah zRA@b=KCYJza+d7oNi*_dZ!1`wEy$$*kF3@w=(=Mi+tK*?H;mRvGMPUiK0FSloBd=# zUm&pHX>guT`|W<1?kcDS>>$DDkg4#GAeF?XC5I|FDOAnCZ~K7ZdR@wATc@mF2Yo-e zg~sJ&a{P=Hl$?UmZVYO+gG4uZq|8VtoF$nsK=NQ>cdZ6^qqfXUS$s$J5*x*~kTjTV zO@xeD1+W8RjpPq@t)yeBo~~!Eu4`dWTZ6p@dM1fX2ey~&x!Z$G$+|+dtp{=aPMLPC zEddz5mTuRE5^dWJHp>qt>s}U%s71<&UWC5KB02MVPa{-WSoE7E8klR;=?~C+>?CV~ zb?*zMK1{qvJLaX}EZ}u8Ta7H!;W_jP-wbkMG)hgM=IKBaX}Sl)A)_qNnJ&62KFZd@ zAB?5)sVY^63)s(vS+X@Pm#qaFFa6+m`2{PwVSK(_u0d?V8CVO+>pQI}mDO3o>tiw0 z01Ht{ppZNvMjng8)bJ{mvR{F1f1RgbtodP3R2zWf)}VrfjXDrxU^{kkYHGfY|JlG$ zyj`d!t}{0lB0LOj{*@vnTrHyE05tn38_l&MMGEN54d6hr@G;k0bwR;n+s$A*JpvBMqk1+)8!V}Q&&k&qirh5yiCPMQAiLp<;hM~KYZGl$Z&hgZ0_0duhiP(Mg61_QsAW-t z5^56U@fLpbU8!~?Ks=rZKJaO3M<)_Af(?Gm&!&S30^sCu1hNaPaeO-X&(SQ+*jA;H zN67!Vvj^B!D5(2i=*uQVVQbtcM+K8~b66BYS49Pbwp zAvzB>6iYalsB_rqql?JztkAqK;C6+?n5K67^Wi?YQi9x@7nC8@%`zyk=Z`KNP(tY8M>Bh@^@j{c_LKvhG9hjFVuex zdX;gU57*K!ekVO-h2d(LOf%9Hnvx!%q3N{(B`Hy3uA%*WH9-@u8d0~uf{i99=f4DP z;|G?nMC2pXc!s@ct?+xgpcmr6CCftWRrAC*Vb*w zB(SwkTu#ZffM<77fjYlJj`W{-bM=j2AmWIQ1@)yaG5=m&t% zwsGX9g>LmA77J7kOjsXhgALEXmL5Zg3*Xx`e=$?HSi5pr|5p&IXY)IlH_*C1dP??; zqXP!(dLdj1ufh9QfeN}$wA}Kdk>rcky6uZ(W#pfZ-C^|R(~-8ECc^`;UUN0fTPb_K z7tE@c8?!_w>5>bc5v`#m(ehXrjk*DisXV6k6qJ2;tYAq7H*zUa$NoWn;SeMibi>SG z4Yd9+cqst|G)}Glp-Q+I zrIUYC!T2?bZ8!$<=tZ)Am_TA95l?Kb_T!A+e^OA~4)Xyv_LFd#M&Js?vi|^-Hk~B( zW2ozKosbr%3an*GoSOewq^ie2$GpS-pPE4R>(51y2_h)EJDiTCaK-K6`ge>1FUIHy zcJWDKdCy3da7|klheBE$YKI&!mxXF1B3v`LZrPZoY!?ou-=!-Pr(1mrF_Hq>aV+V6 z{+ehvhu_I2Vf90Vj$^3<9DHoa|E#ekq8X1)a}f0!?7}Nx0$2Y(Mb`n=)YXO$8%aoj zVAvysJ+dbw>`ed@vImf$qM{-S4wSeDZbfn8##y)4y{p#NQERQW?p;@{b!+v1f1c;# z+r2*xw#>)Y86)EIdb~gSB=YDowA~mbwlP39xDP4m19-ZEYQp=F zDPa{}CQj`g25kzWYT{K^Y2iVCZxT6jub$kR+eZ9OVe|4m_J6OafYpHY za}_L~BQaG{F^jbw!eTUS23a`z{~O9FWH-7r^c~=rR<@JzZ$|>81^^Qy;mI-_P@NqR zugrx5>vGtREWvMe;PWVu@%cftUk$4$7@3^&MYQwOMmQuRcnQRGW{CV2ei}-$&RLS-F zJ(&SI^k@Q!{26%N2Vh2#`F~KdNeE5_mul<(S1iN;hso_uJp3B0_91`B@p@L1y`U>f z7$TKpPY1d%4;6vAtsd#~3w>aahRPrvYk`*h=ZR$H?3qMz(@5UIQ~E=EHED1pzJ>hz^2C3|RAF>5>;vQ@Q-AzOW6DkF)q9PYT?1EMCDtrK+XX69R zfzB9I*9r{>$O`MIBS#VQ0TxjuNEKfo>KD*eF-&eH7#*M^!)u9X1Y|%+ckaQf*bBBP6$j~9tMz!dTOqHB@~+#JC5AC4Zi`9KxT&iA5s%J zc0tgRe0n{GL_td;`vqk|OLDJz6uGmbovd`8M6UecmK*j?pSC*4UOn)>Y%|Cy=<;`$0%`@i{AHhR@k;h0&vU?(dHD{j<$Lh_pzS%3uq{ID;HSXduPPk2?bx+W`sAFTvS+wo|S{MInIJx8jVe?hMvn_^S$Ou?H zO=%}P;X%9a{X}x*03bU*0NTMij0A6nToB~H1-gQV_((xDk9s3yYCLRpL672K>D;?7 ziR=TIeWbhR*AWG%Mgc6Cj5>1f8D`4o_`rbM(D?sjKrqZf50TxF6TZYcVuSZ2^gQ#r z05s8WJh=nC&~`>6i4F$`4P(~YQ9UqXeuj?d$#e(c_BTL&w-Mb5R_kfg zU^s=rv-K^E%6qkuJbwqlAR%8tvcqje64^#%k#NZ~AsU{tKWUkWuq}rX4|ZHTY21(4 z58(SE!T$xjz>8)P3>XwJGI0Qe+5rg0P+&;ho=Kjd5hG>}BURt3fw+!;IoRD5rD9xy zQqvIqax_rtKwF@IVjh6?0;n4bD1~kmiGB!A=1y3WXTv4i3F*xj{%N&BY;Vu5i`N^wKsHyyz#_wy&O6oH>_?x*hi~!Hxs`N%Xo4FZJRVS}4+`_yg<$cUU<1BxB6-kvCJ6`Q@cQ4OL;>!W8VC@{05j=+ z0ReVLBk6w*g$)J=j4Azc>3D2nCWFO>MO`4U|2yG&m4M)u+u(BR-cHVS!4VC4w{OP# z*FJ*{_pT}A=QZ$7nm!Hab!}uP70cs)6G{6qAXcHEE4_yiuQG(?IEZ+_AhTB;xzz(; zBj5$Q?RLVc1b$#e9hp-JoJi0Hot1dKMa7oG;&u8Aa#jbE&X&of16aU3T06=62F^Je z5KWHWL*WE~7GH(Ml*t^4?<8*I0p}9^Xch11{z8B;;gNKnT=U{C56XJV< z>fQPPWC&BSJNSjdT4F5%kAQUIq`u@6hz42-wk_0#Z)GDsx_A`S z_alz&8wZe=8?b-d3fHNqnI!cka2;Wx*!B!jt?!H`1+NiG5y-y9{K|Aq%XNKEjze3)YR;hA;fVKsFqzC4L_eQ0|n0oH}VBI}bvBgY&YZt>nlZ zSTN(BP53Pt_w|1V=k((S^5vL;q#l5h0q52e2J#5k_Tqf}`(|=&3Q&@e&t+T}Ag_D9 zU~dR&1Z}B+F7oSaPdzJ@J-a1$v3dtNfl04cbITr$?f z8xn@)IdHZ64g3B*2GX$`yC=|-J($D}*vO4TSj^r6^M?WsSr7BhXBHyp3%{RV0L#|L zNa8`;ai0DhhUyM8__2et;UEsy8U;&Ga54%W6$Dr5H`wo?yWjoRkCe2-s}1|W!2cVi zuAfcr-I-0AX2Cdh%WM)mVm3MV9Z(cU&L*SxA7iP`wb1L0(tTun(wIBMS6NLhmM`H<7+dK%NeC!}Sbw zO%4PMxj065`Jtzw-v|uLQFz~Y#@d1p3AA?{GM$K5hKfC%g2qfm&w)k_!u45ABnsE8labeO z^i~^$5p(gX=HUJN;J_a@L^mTv#$99a!_X#@hzxI_wa%l_RiFors5!_Jg)Etmj}Z57 zEdr<*XlF6ZGG<`T--52~4d^8*1kcufWLQDy2|Q_-hC<}oem&_6qw$#1`z7(1_B6U^742a6c~85 z5PUo8=0jdPdlD(>oJ3@C&|-MQ1m6QrVph3_Ji(q%&MCHemek1W?Hzh^X-j4y?Uq5+mfu zUULz^UJiB6FX*lDkpIVD0X8SP`Q=axd4XLGk*wK5)XlMRzI@$ z>2z`{WE|;A02Xl1apcX_deSfk@t&Em7Z5cQMelxO&R>XXaKJ$NgY@4+OM+GNL`^es zj>NhU)JEL#oDI(%7>yY6=du2~UPkwVwp>E@pSO@37a+m7h+g>_4XT+V2*f%;Wq)pa_ls6wqqo51dA)3(Ca*?Czt0!HZ%_c2zWZ-qlCZtg{br14R#jmU0JJp2+k%1LGY%n1dcX^{}1@o*KtRRz z{YDP3pn(+_`2q9)p=*Fl!EChj^uT_hwQhp_B!guDIi zW&lu(A(28DG5lp9UW3|U6gCKUSd$?X2{@&imn52622tR6#XP#%Qi#(T)P%^C11$gKYz?B&slMd&Vq z!d+4Lc4Tw{8F`|>S7>PizKKM%aIFGyz~|MISD+=4&4R*y zMp@}NeqIAiC^JlOYVA;q)#A&=1+4`sE-I{;ib3;Cb`n_)7c5*Kf$Jl1PY2F-p1}_G zEKu@)YDG}_R&wE7D*}}afsZ%f*-D0xCuds8*B@HRqv9b5UI%EN0x%$lAg;%ferP?G z;SH0?*Mrzg9zujnU&lBy#}6v^|KR)k6^e+BlgSs*kxi3H+h%OV^avuGKa*@-1pa+- z6IoU;ldOCIv+Rd}Ts@1B?WbD_K|!&FKuT&gkjbF#bruqp0Jx6FjpWdzQDp30z;AWg z$hmhmQnv})bQK^uilM?Ov5`%VQn*x9*hmpBq~ih)=Tw|Wmq9@Ux}dZn1{f4Z<@g;# z)lUv=$11qbNDy4+7Gj4zXeQ6Un~H6>frzGH9szaF7*4)kfl&LmdU9np7NcySWk$4+ zV<7))SW9vtrq6=n`dU44#Qyt_P|{glw(hQg?n(@1ECfLNk{ zUx#ow*}4;sDVUTZk)Faccc2SYO^3}u8Y~<{fZC)CBv}>i_?94C(R>;GDs1+?m=&x>306F03&_8psm* zK=P6f_RXh-+`10Po~z(OyP)AXv}*!c`2sjit?=)`UcdZk8=@UGlN<(2u|r$P29W0k zxZ3z)lEPy22Hi-&8L1M0h;s^XIycZu;F6-jB`q?J11dg{Gr=vTgIfv)x6~2eNG=JR z$@V$`5=Q{a0q+iJ*w&{28^Q<3 zbi&fwZXl;Y#w`{y1KLdI6$o6|g}9N+5tt6-xpF!gk88XihZ5_*&X#ls^X48VXv1%vV2x$Se#HJ2%_OoEz=r23Y19$S|6T?N$>E zQ{gZ=>-v!nZYCWQ z0L45V@XNS=JnrAyuYp`|cED0)HztcQ7BUQEjj#c$5grV6m>iH1XEL^76D=fpEqwc~ z0Yo0Peu|2{M8OYGSU2uF-3Y)sv@#s`9b?%Lm>6>Xvj8Io9m8=TQr@{b08>JX`kR3? zt+tW1pKN6GaV%1fjrdY08pw$)P>tMxiWTSelMLAB0l{t#HXj-bu^|ANA0`$NCYB|m zAZXeMZOA#?_dB?y6SatJX92*NfxOy)*dF`AL9aI;k_t2>s{pas24)qFip23JFrL9H zF{N*Z6%07;iCBUi2TnswHV@8cMsP1o8+r93te8;Ccc|Uj_0Z|gg7hldMyx1s)K#qe zC~z_|N?u_g!N`b)XHUcO=~7P{sX;~R2cU(h$QOLw^%-_@^&qt7GCL_T+DVoO#wo>^ z(hD%n+w7$4a2?*i0cQ6Xpyx%Z#Sh7cVK63yNDl7RpU^XH;9L_wK&*ydsn=QnLWOT+ zkBw}10y@SuFqohl|L=)4U?{&}#zarhFx?hmx~<#*=5rOM*^f3-;INQS`)p*N3p}IH zD{VMVcX8Os9CXQtl_&%^eL$D=Uuz@FkdefMg7%^yXL!A$GM9%)~0Bd6ZtK70qZW01lP*2^|oOvUWwUj_jSbk zT--{|VhF3=j3!yHMw3yyfqedQ0NMLD5OF6%UvL>9rO5Z#VMxIz0@&UFPpK=2BO5S| zNIru93w{o*#BamkmobdoSqSU5Q-jF}*yz239QaTg_`g!fcmYl~c{xCbz!klE1_ZQ- zaU`+^4kbx2GQt)+7F+aq84wiHTgaDp;COxob8!ot4(1Va9s<-9LO+P~LjEK|aIA%^ zPni^!cd|*)V5K73i3ous#7J|on509^&Vg@#_9Vo7z&Rc|HUk_D9!xJr*oC4=q)|SJ zEW!PrO~8QztwbJ&WDsH$OoD(B67w+zV#OqN>5mCyCwPUam?38k8A7J&?Zk+QYwH9H zIkX0L1J@idi9HC8_b}Y&YbKJ$V`z~Y5Gkq6Fq;9pg{gPR_kdRkgZb=lo@U)R(A$o8b>scjnJc8b$EbjJewpZ3M} zTlNCyWpx{En`|3w9@U?0EPIr_+)wFO=C`7%t7=Z&%(`;(c9Y61sTJ48)<)OH)Us=P z)mGLTYb$EawX15E*S6M9s3o;dwcl#S)wb2Ht!=NJRlB%$Uaf1bTW!x;|JoCF_qy%& zH}<7f$!>GVF0Z~~z1Seu>BU;HMw}(i7PA93+Mn5HN_4(H5?={jQtDggTjE>n+t*L$ zr}v8{E+%Kw5OINDq2ICUNov}*6_h-$Vu${fXDG1!b{WFcu4j}l+1x!5`P zD<{C=Q}?&^rS)IyYwHK=d+S5%1M4&EQ|n#p9jm*^&6MaCk`$W6m&PS!O7o>BO-7D^ zQ^iqpWZa)pPNh7mQE)T3KbYPpzD@j`_%Sh-7sV^83zhU__%r6%_uK!oAGN#Gt+79} zKd|4oH~0?lb$51kc5(h@{9;V9CEDKCDjl|iwa;sx)n?cfHg6l%7H*5MiER>FFWar! zo3-V(9koByUaj3_e{V1MRC-o;R(g8V>GW7Sjjpz;to^Mu=KZF9raH62GQ^Z)aq)Nd z-zs$OSrJ(hSsJN~EQ&0MEQ~CVEQ>6T%#U0cIUvv$SRYsyXb-Fo>>XGWXbtS-DL6ik z`za4o5;+f2>NveQ<2i$TM);U1Z9Zdt96pD9F8VCwF6KUWe(L;}^E2lc&QF{btPEB< zD~)Ak{b^R1GEC{FOw(=ibKNuDH{I`yYmBRmbWNJ3OtYV{kMTWYFN5aq?N9ap!uZU1 zTlJ>OQ!|e-mobMCtO?R2YFZf0jA1^EU#l)x-LKjdxju43VWEy>eW$%y((&Z5I1;R(9F15aWmrD zuUWqbTn+dw;DY-l_lxf5-CrfW zNP3?1Ea_#^-$_ZyTDG2TWE0FdR3%x(Sw&d|S%q0Uvwp}r znH8J;p8A36=6xaceCpj)o>gq+ST!zMmns*vi^}Cy<=>TNtx4OUokwktY; zu}J+k^-Zc<+F|8!pmQTy0<8-t zc|UQ89*Z7{?o$7y#--seJ2hLLEz6c>mu9Q7E3o{nBJSWE_+S(>g=`I z&$4$5-FmwAbm~58D!#Fws>sx zc&dJ;{!dM>qE$s!73LP?=I0jW7U$;W=H}+)?#Z3t`iqd-lhV_x=LNTmZa=%7cl*ih zoZA3VLuY0VC%~mpSk!sZg&R;RtP)gZSDns1lY2Iok=H-5EpdF}SlT$+cv>edCNDZ~ zT;BY=d3g`=-U#0c@A|*<|J(ni|Jyum{sHz8_F?uR_CfYB_EGk6_I|ccC*PIJaNBO! zVK~!S?8*&E%I4;92XdRK25Mibo|;ZAp^j%xU@m07WWHkl&0N6S&s)gL;wgBUyo}D- zuG|2}n@V53k3L#|lW~i2gCWt2^~L(dj75x2#!Br9?QU&de&75)`MvYE=C9VQ((Kgy zUilN_9OFmEv&yHHoyvvE1qUxRCK76GA41 zoC+BmGBssN%J!5Y(GAf9qX$I~j&6+pF51xJMrVv0mm!u}rPc~-j_gYQ<@{gsf62d; zpHeVhS*09NF{)x@#gE206>}?QSIEsyW@3JATE|__?dBft9O%Xk(EOzPQFmSUug^a| zuYHCJwh4v_dRF>Xp4Ohx{;AC=$Sue&$STMzP!wD%7-!tb*uYrNIM2PnrStmpepdaY zx~oc0PD>t??9XH{{>|)Z>!JCOeYbl8-09QvI!RQU9%dsdd)%j#)7`mz z#|goh!jXle3R??D6pk+Zr*L@TshE>7jM!tml~&9z<(Kh$^Go;x z!s^5Ng{=+iA4cWV`96Fa-m*j8B-NN;q zxAQq+0U_pKbBkM)+a==#<3;~lqMM>Y)`8Y3ozpzHA&zGL63?Zcjj4lD2c`~AZAhJ; zIv}+T@d>&c3=4J@IB$*hwlw%MV!){)LhYwNE@CuHEpWz z6yLm}+@hSK?4qoq)kS)hPSsB(WlET(%w|iAWw>RWMXpQLmFt{)wdu#`=j!h>9x(1P z_7{C$w9ir0v-mYbulMe zP;yvuKypa3Uozi1&$_`HTO3y$U%a4reQ|g3>tYLi0NqOWP4P)dOQEN*{UiNZ{$l?R zjQ5Opj7OS>n$MasjM0qTUOByZT8@^hEz}k<9C?gfMj@ksk(%?! z|N6f1ee3J(XVM$>1N3Y3tMz;Jzc4N{E-{Kc3Oouu_=Z9Q&ztY9@ZLt9PhCY_Na>`k zr3^Q=7@Lh9>GRXWGPq@&GM@zB1X_Z30zIKQVR6Eegarwm35yas5*8+SI}$%IwE?<- z{sHW=sIm$EC6T`3GEv#q zn1Zr(mbI2OmVK5=OS7rPRAm{hYE{ipxsyO=-$0*0dLS)uxUNOlu6tp5YI$Y}wN5v+ zn>_qI{oVb$lxvjT%D(HATasIRa>5h6F@#s=5SMBX|qHudMN@ZoT5}8f*LjPRab-GPyjmhE)?)6HzmuCXyS$_2c?-GdSVgFfNm;skxX!t)bLh zNb#;YpK>|n*OXsUQrxE3O|F|#cUXK#yxnh`-&Q}W^Dw`me%n2^dTjIf&ZAwd@mo+g zuWp(Bw*8KMN7448iFM=Z78`%C_o&-z|77pO=*_5O{ABytrt+n$eS7&<`ZoCv@on^V zk~nwXEa3z>=83g_{lyu6>3%_`?eZP+ZSte?Bl2VNRQzhrDj6S z#F{ZR5+|{f!YR|~g421YT&G@6{p|zn74}NI-mbG3+l%bA_8R+edyD-a`xg64d$n_w zv)b9{Y;aaOmpM1qO|g%$kG9YCo9#EpZ-;o6Ul21X$*rB2&RbH~S@)OIGpDCcT(?7Z z(&^;Q6+52S{8N*_dzRMVwlhuWcE-NWzN9AF%Qb9!i+E+#?7AH$X>DAss@77wy0)u!bnV1i z=i2eLj@os#(`#qfE~%Yg>t4&OJ#OD-ALxaEehzVtI67d1eU`*eGF=iwiu`U`{i@xo zqs>dnXz|gSljJN}OAeAET$9c{ZTghR=7mZ2 z*^k&)+ZRYYobS|psJ&nFN6pQedo{OeZr9wcd02C!=0VMY+Uqrc*6g(R^7NrMSPz&S z!%W+Rm5~jBk5c+@2K!hj<9rVLbaIz)Gg(=t7rG41Sw>HPC;xXS(?buHkZBrAJU@YV=S9vZ1LBaUYbOz(yUWiAE_5pxmJsIICYx(UFr#C0nJ@H(A3lWFVQ_}d|G<8 zI$KKb!|Tr8Ba9S92%T~Yb5`cCX%6jUdY9y3jTQ&p1*mV(=`hM9F=Fac?IK*TNxL*19<0E8Oc4FH|6q}c)^b}H@DZWA6&<~ z-ty@q2zU0X^sf9V`W!PeG)p}``5)CQZJ!uw*jMJ?1xd-U*A_E|RVa)ZjB@X-sb}Mdnl))O ztukdMcRaVX%A-W$NRROU(=?vHgP%(I(e$1vDfv;qt%MTyvSh!tstY51y z_7E5Z-d)s1lo7@S>0SPQ2}=_`G4%n%{U`bllq{1tB$Bdj%W%^eRgkk^;0WDw%L?Us zOXwwuKMX5Hm(sxs) z$B(AmqnzO%Pn?y=XIv4l@hg>2mG_eiRM!CH0m0$r!S8(x0S1OCiCL@nltI zjah3JN<~t!v`|_kEtbYeVkL2sczOaok>1DL*IaMTv*cR}EQ=x+M=pu{JMdNDKY_`d z6b^?oku!-ine&U!WuIStyj&oDIl-#0tyo%JsIa!rM%QsbqeXsDWG zO^Sx2d06$R>T%V-k#8d3Mw){xLDryS)Z^3>R4$cA2|k%t~Q#SdE$?nkJ3S z)$Us7`p)gW+XuHl)i=~P)ny8$qFk|#-c4UmAEjtjj8?2=tz&hwRtBvKS{*b`9j^*#s z(}U@elFUiwCU0VIW^ZA?34ZGceiwW*=~mM1q&pdRGwx*+l^2(nln*zIFpM;;GORYN zF}ybXYj|S_HHI0(jRovNb`hIy@v-J;i!>Js%*^)j_bnrB*%v^UDP%6G~rF}0$9iX^Dbh02=4W?gFUT&W7txF9FS1`||DAnYctUtmC>6?ta-k$gnj_1Z zoiitAZqAjQ-*T?zh{R&CL_9}3S36HD%oXK|bI+GwD8E?FRrAz*wX&kTqM|}z5n4o+ zZ)#HIR25alu8MY4eV@B8cYp3J;cej^Ayw!tqzP{cZVT=RYK1nTUHDq?ui%X!w<@nH zzp7^*GcO=-F>MKLDQ!aD#Jov)kMbVpJ;~GO8}g0$e$k9*|LD4q-XVQLel(mj{A4&l zJ4ic38_aFw4&nBr_NNY@mQj_|a_S=HV&)R2i`Z4{CU*FUeZ_v_Sbdy6USFy&(<}9R zwcl&^X}9O^$lsa2TeC;AS7V8`Mps9l4mlHYHe_eYu9V#=+oHEe?}+Ay3POdU+yY(! zzhI(rl5(>0DEAomI5*QX%QM^an+I$RJa6c3>TcV(<7yMapqrjKv z$7AsBJ5&!;4^@rHLz0`46PZcOWTqrlnkq}ZL%U16M@x)Jib;;S#k|eD!`u|QIdn^C zm0F|Ls!t}LO8z0)P3^AsP`m2fbnd#7Mh#u&nkVWzO20nC7afcnCIh5ZYQl*P&t zWk`BxdRTgbE>V}HllVw|WIjE-yu2u0C0?baUS(eY7QQKbTi7#}85pS!d^Z~_z#X-fJtedS{tewS+iWe8ZDSli0u6Q7Q5PdK`BSn#t znew0JtLB@gSX-hk)m9pN8C6CI#JsKEUmfw^;z@$TJk~tUJRq$hZD3l2Hd4#dj!YSq z(wZ_Ry)E65zSg|X+-+XLU&&v^pKG3Ho^M`SvaDoz$xZz&{cZjAl0Qpsl<-RVrGnC5 zN-vlGT6$1@NPSp6P(MgNSieudUw=SfY$!358nV2zy>q|Ma10Ifx5(OYJzW~=6?X6R<>X6eGM5!OiS+p>3M@5>sQLzqp>k?K+E zR`n=Zt8BEawQO|Rn6lQm(Q#wq_C|aku`l9)?x60FZl7wu>VV3L?o4-~U#I^`zd^5) z^_KOKebW?Rfw$nV z#HWeR5_c!=N!*)glAGlg`AYdJ`D*zH`AGRFd73<3o*}Q7_L26LZkBG8Zjw%tPLNKN zzLUO@zLf^a0%U=*%hF5IU!)S5NG6t<%|^4yoF7JBrLTaZ2IEcGaPi)Of{ziYi~Ki98rjxTQix!qUaRo_!rDO3uz;ye0g z`WE_l#aP8S#TM2k)@Ig*pzfgcK}$4?G>bLvTvx6ew}mo{(o89hDvm0Na>;bcbk6L- z^k8~2mnJPvT9V|&_GI^9%Y&uCvfxv3C*n@VrN^hnr^Wlq>2e?WlBh*di=&2RHf0XY zyqkI3k$ER`S@4qJrNNn58Ci;~FRV|j&#X|7V2= zDm6XLJB^n1MfpkjS(zw~7bl3rrJ>R=X}l%Y5@$*FPV`Rl&QHrt%S&6Dy*PVGb_HEY zFQ>oF{x|zg_K(6d!n49mVTMp4ROF=RWaM<_EXY}yb0g<^&YwBy;#6^(c#(FYw$q_a z%a!M*=KfaxYx$LOsamX-s5KSpimHlKi_9XocvQJnxmP7t#aAU%9nC$QdnEUf@PY85 z&|l~$WC$M#9ta)^`U(3A>xG{L9|Ru-rB%gMB~@X0A$g&Bt7t1|D{0g7rscKgz07-_ z_ad(*-PR9TeRV(m!NCh~pQ-MZ+b-3EDB*aoTWhGq;61ggThoNUfr(sA}p; zW*2h>lOpaR_7Vq*nc@I3N1v=u(W~{n^eX)k?IG=9?Y{iI`QPUs(j3qn)bx(FN7qGP z2>ChWe8_>6eJT4>zK`A$y*FAODh-u|N(;mVl7bn^cI9;C8SW3<)7(ObXTE2Fr-!GT zr@Q9^-96oX-G0IMf_;LA+WXoE+It0e3hovJ@d9{(yl1MvR8LhSl3S98CkvQ7CZDND zO;628eL{OgdrT9=@M8EekC+db51Bhdw}3$yQyW$tRudK$;0Or_4QMPJR5-Y>QdzF7P_olm=~3x?9aqQGDSXm>GJJf!=w3cv zDz8efUS6LIKNfx}42unk4UPSm_YdziZ!mu#e-M9b*p{&G!m{`ZekT8(<&Nd9WvOtn zaEWks?9A9%v8Ca~;U(eUB>zdiN_wPtq$EzZZmE8; zeu+M!IIK9lc&Bx{b%%9D@$%xX;xEOYia!@O(}&WB(eqPsQ}R;Wv@Tj#Z7*$wwouePa3+^Ct6V z^LqX|em8%yxzoJJyryJT$?B4a`uq9^`gAV-ngD0up;BG82adGzAO| zuv*L(i)EpzL$yHFp_`|huZy)tTVt&Mm3=PzQZ|Cw!W_;Vr*^2vs>jR5%Erkil#MGJ zUp66bT-^A$BN2xp4o95O9n&4x9a9}q9aZ(9d(b`U_vm-%cj*nX{;~lw4}+V*-Oym^ zZy8`=Q6l^)krapL7|%A(SY@;_M)}G7!Thn)Hyq0YL*Og$6a16-cjBwWLx~3x4<_2> zwQ`$$gS=b5UOradCU?kl<=OHa`Fhth-jlR`Za>=B+b>X8+2`4&iKmJYPSI(heTlu& zFE?;*ov7ASd(ytco)fsq-XZZK!IBE!K7MrAbC>w}RL60n8Nby0OuES?vYO1czp}n5 zvVOEavOc%ovj&<>91Z8^luYi2#4m|)JSJnl{ebpNE`w{fmLNQtD#wYPfzr)jK3MPxv;lj1o=1nyQqF;7(EnadE*x$*PjQyD3YF0#%qzJ|pu;Dm55rCd*$QMcRggm{;q8)@^~ z;W1Y{N4&6ZxqVmBq`K4g@9q5$OLa!`I*E&(Q*hf9s?3(2^F7gzqE4@Bfz`uR`G@GF zD1h?8iQ+Vgx5(CETWnikTVh*iTV`8sTVd<6t+Xw*b=v0hhVqO&wo{B#B+XBnNSjsh zuVk9(t>0xoU&dki6*;eSM>QwTu`Mk)UFq8D&N5&1|4H9hr9B;{|};V&MdL7 zR4ATV@mewj7An7pX_7=z{-Q zk-zk<#Hf|Sf$Ea5zogM zl&8CEnfphd2d*+ft824sdD!~20$00xEuYWN^_b~y<4tppbh(*Q&dKM5a<8V`wR_cl zw(pjok-xV8ZJ)t&s^dBNc5aK}h6UO90{$%bcIPOU3eN8-d*o;3n_M@#Ch~sj99+u@ zb9rNW+c~?I6XBw()pzcw<;1v@ag?1EY_2AgR`=9C*T#2>A~)@xb?@vi>{EF2?BDEe zb&u^I?Wdh*xJY`=xnskuh} zB=^Z}a+my7^R%YZo)|FA^@ab&p8k~!jA6Xzv>^hP+iePsbh(}K zTe@DlK{{4CPC8!tkMy0g zeY{<0E_4?=tB%#1^}zhl{K)L8chkG;dudb}wZ>aR)6g|s4Nt?@JgNGt>S@)x$oG*S zI-Tk`3`evoMir~#vUn^$Yp7Fsd_ZaAsrXkjxvI zH#2W#b_OpBUL2g7m6nyB^`7;C^^q0e5$F-*!As^R3zENMZ)I;|zYqQp{4w}W(%qzc zN%u1zWIW6$EiWrqmX9*D8b%w|8rB)Q4Q~za4DSsQ#z-T}Sj;YAm$LmV42!>|ROKjB zDOKNR?aSJqm6V;Fos#Y4P4T9BKT3U^`XqIx=Pb|JoT-3LdWG66 zjgm%9d$0VU{HTl($BN^`LDFDph?H%Kw!~QCyyLwSytC4>({j=lW_M;U$}XXo(#zOk(n+(Wr{h4+N_g><2h z&{ud@a8GbwP$%py>?3?Dcqe!-D5xr|Dyj<13(5=5TSi+>>!MB0o08|4n)g@U)4XSS zrhIe0CBJ7hGddu;Z%BPezmT5|=M5JOhiOM>M`=ymq1<8I2I@fSAZi7*lG=;9l(~$# zoarw15POOlVt;W@ae_WkpQJC>SLiGC`?UwO2erHMcjxcP|6a3CvtLsaT^ntS{xRfS z$WI}AQud~NpRzN0SM+X2v?x>@DhU-72n$37Q@PcXhi3djxw0ceHo4_p~<)ZWY`v@aOg9F?o+vk5x}pLz9OkHz%hsIZQ57o|>AP zmU^G|fcB7<62pn%#@uDzW8PD zD)*}JdRO?q@Izr>Y*1`)>`UI?yjQ&b`~mz1{>HFPVVlF!`04x%{!Pm*%Wca-VW)7B zuswEq?2Om~pYX!)qVP|W&yp_^*A%xD_s->gA^upDx;S-7YP2E75Nr4x`z7|j*w~1; zi1>&F6bQ;}4eW!krKDaofIJEdX z>sISF>yqN7#mkD{7k?=JSlmb-LT{pHrDUh%q!6u>)>&JoRcgz%YGajAW32YB@vilD zawIq>xFn1>PcTn34@w)H)|eKhWox6gqf^GDw55zqAD2EpeZ6^ud82tXe+_>vzr(!1 zywKcLvZ7>V$sPS&{XPB7l3OLWON6DOQgP{((%(w2mL5?bRUcC~>WAo?^au5a^oR9j z2Bo3gkn5f2o$uXET~FOW-ALI)*-ROg;Al-4o#2j<~UL`y&oS z9E>=uJEA+PJE%IOI;?V~yV2e0H|e+Nx9NRl^|F34XM>Bu)zH^cZ|P?VrGz;s;gnIH zt)8PjS;{CSTlv=f&ivjCU=jK(`c=yBlxviklv$M7lz%C2C~qk=0bSrDc%Jwo@nz!o ziTe`wCtBsz@*4RX`C9opd8>T1e2iQn&y;7$2T1!#`%AYqsri|i zs`t`U^ahPiqu2D*Ff{%esYa}kXkJyltopm^Yvh;6|2p~ou{0#B5>-hmDND?fuv#@E zHKQ~GT?e=}xH`Fib0hAL)DP4T)jEYnp;c_BZ>4XePf|=!OjK-ReaG6$+8neoXj9N~ z%~H)WO%JXI*ONPvGMqAkQXW+nrHpdVbj@_jq%ysj6lPb_vZUon-fRk+%1#eX4NeO_ z6Zb>h>9|Zsd`7$?-e2w~XULaFEsa_hH9WI9vnBIE=Dp1OnJa>q2X_VMWMyS#XMJP+ z$NI{O@Cfq=_mCw^pp)Fg-o@U{{ucaS@YmocNsp2qCq2vfE8}T~y1ZAps(id*tYMsC zi(!*tv*AC(XTujmoH522YwX3YU{|t(ErFIGi(2LArTQO3XBD4T(g)CZh(H1f5ZpaD zNpN?!pa~a9>MmQ|E?akZ|LX4UzIAtZclY+|^L?1NJM;U`IcNO-J=$H`-CD6us1xa6 z;Bqh&{7U{p{!%^}G!Zlj)H~EO)GIW;bZqIk(nWyqFe!0{C53x{c>?@I5pKZ zq&h+!v5wQoYGgO^!CWv8Y*m;Q7R4OhEZuCKzsy_aEBm7Rr2DKpAwDKPF4l|xEGO3K zH5t8DKSMuFKV5%Ye^Y-;uc=YhsB311riW&P)CQ$NWw_$L z%KyUu(%-kbcXglY8iW`jLFnWfxmNxh@)Yt6QbQBdB($f9$A~A0P1p_CjaVSi7)S(8 zRiCInS)C~lKmuifvM@Ld39q89psl1eoB^3G{LF@pN}N-ideNbLz6{vg=B@#oUsqCp-Mv8vZArBcCg; zjv0rS6h4dyZit0M-U-I7!eOg!?Ez3 z$gIfh2-!xok!+h18xk86^KJjL&9nWs{j~kE^(yO8*0apYHFGUoP^chO7z&2`p+G1e zi^gKHR^S%kmf)fctB?g^jc6FwFub9MqPyZR1v|tHu|k8m1GodZ!<0jmLzQb9RyC|{ zST0;DTqc~=Fr#5+!(#hF`y%_3$fL;P$V2;m`vbeeA#=zbHyqa-*B$=_4h9YddPRCf zdPWXJ_C@wbf>D1o5OsiUU^{qq>B`borRz%8l&mcoz{>o~>d!*6tJo-ZPvl?79>`Q9 z(3otT?w{(P=ARm#9G((pB^U{2BFpv5`Pb51IoLUb zF^Dmkv5&Bau$OQsd?0)@9=xJ5s9R6lO0((b=^L3J!GAH285qXNMueh_BCoo|%`b0b z!W8cU#fq+hmNB1z$HHeb=NEM=YDG&|4rHANudD1-`8VHPwH!XZsBO^zCW=xMtO{1u z5R0qQ%wa5nb(sxA>BxLh-j}}u?;va<*_jiW6TovT7b4csdV>v2r*knrr)oKPHGFvU z#O7(uTau-TO^jDXn=2ROZBxke=QgvmSXuC?n>zDI*;}Sw?#vTrXd-8}E=!xWL!rz+ zi+e?`L|YNRQybG$MN>q(6zcr#3Pt_^`s6&S$dUb$T!9{3KB)Xy`MvV3c~7KIrG;`~ z($dgZa8`O=dQK{ov*f!Kn*1!;Q2u{e+p;=}&iuJFtdk6qjAL#qzZ{dNiU1N12k?`; zBsW=|+*SE5Bh`n_z|X=PCCepypnIVgROeOsw42z$_?5K=FV|bZeouy@3uvoqN0}$o zcB<`Io6saRO`2v+TGK)UXi}P%n#$${(1p;Vx|C~S?G52g;aX{v>r<|&paHaxx1aYf zeAQ{zSBL|FK+ z)ZsLYcO|wv1?63g-QWweR;L$IUZI=4wzNGxmI-f$HTQ9klyMr~#2Pj25Zwb06)p2G z#b%0b^1t)zAYb!NlpimD5I+-Vi(IB2g1-dq1>1Nv624@BmuY5ge5CfmMU3Ec5+tqrXVMMhNwjeQCoRicsvPLQZ3;~BoeVi zBoRug#awY;NgqjXNiRu%$-k0}8_nQ2I3`3Wrk<2P4iiu|CH0Cx!(US}N7Vd7i6}uhNraGj+ zDNU+ls-n5KV0^5hf}^k2zfYmk7M)hbDW6o>r*IcK2FGLJnEuLXyO*`N>4Y5N9^K@sN*rOF}lPC{y(Bi{3o(*G&nAYeo_z- zW_sXoLKb}+4#4+J^pzjMYn7vf2nJb&V=ZK@iGOL_;Oaquxy}lIaijbNf}x^E{MBYI z=u_c7g+Bj1&kOGb?+EV?p9t?E&ct1g33-}7rSs#7VX=qtbMYzV1atf374B%_GSPC; zQqc<0647E2;*VdO2kndLgV|BCKU1>IXKH?3WX#JisV~$Kz9Ty%U$~aIm%6*#CctOF zZ^nw64krIZh_Xw7GUpG+X7d*FHuF~VEYdX8si548_u{;Y=5fKX!STT{!Sod1Jv9 zNm#Nn2~R$?jF46f2s9$Cn05dQZ8|x1lZxLi^GMMupULl(?3mEyS%2 zt_z}Rx3LJ?E$mhJ`rrfBhTs?us`?0L8Mj6C^6Gch5^j6$9rh}A8+lu~3EflKf(^6% zZ9DB9q93Z~HrM*S~K&<}_vLc8XZ#aFr6g5Ufc!Jl`M zywIF}Ha@c}OHTggEq7-7GM6|OpUY?UnS5rS+eZi9dDj+reEGftU!L!$H`n*d`_fAT zjwRlE?LM2&>2vtbarT(^nlE$8;{^0jP@Yj<9P@DF}2d}>}Kq2>~8F6>|*@OIL|;b6U|1sNp6c<>+9CPfh zUSe2gSZP>gSYcRgSZY{qSYwFRjjQWgN3OeBmo42~hnJFc=j~C?Rj*SX)11?Yw8M22 za|ZB4G^aIu?XK!^_z%o>tWORJXnjqE?xQ10$~FGw9760_Mc~O%HR{2r$Ldq$U8psT zZ;VFtTLP`>n`(jfk`7~ldvd6?7$y})4dwMZGi9bz0 zivMJ7wmq=jW;&Gv>=KoZb&>_iBzh8HacNu}PaB(zEsU*=ZHz6AZH>*wR>pS5YY8pU ztNi3W$lPFl;Qc0LF^l7+@h{RzRUGnh@*UJw(ksF=E#h4#-()C=uT`g9quf;UE}8KWr|&@Ty7ky%s;W)k%awFzs(y`y!c z=i&dtAD}#E7-=$TJnAF)I_d}c6{%A9!Lih_&WjO;HK#N@?J(U~ z{Cj3w)?$N!Xe9Rbs)$M=t13)gOl^lfMOUdZXIW$9C2?^4hjfg%Ruz{=j8S9Um@opy z24m6~Gd3Di#vaBq8i95^{v)$JOWM##dw`Yu&e;>RhuCF~9!`Mv2)o=dLPs`dtHmar zYMADSN@P;2Iy)u4sOGFjsQtw3z~UsVa+^G#z0+K;*=?Q{{K+`2im^^*R3*Cij$++A z$1d}H!_I1EHJF;fTrjRQuQGp@ewTiZeTto6_3?fKXBXuZIUUiGNQn>iKkQZ97w>-7 z5PnJ1%|g2GSN548wyCy>*i_d9FRm(XvcxShOUjb40G4OwsO8U5#*(%)T2|&gP_)RG z(_*x{*hLOV;nrYAj~3&b<*nu0gGYT$axGee7U8XE8`__IFP)ltCC!$-lq%Hc$V(W% z7(>ZU%?=Gk`felEZGh(_tgQ_eRF&?gyqj1v&(q-FO<)f$BWm?H_D$9Clcq9W}-fkZ=z_P z222;$_1KNr2l8vw8`KkTQQVK(WomHcLP1c61)2*z1Y#p}t|h&IOz0+cNU4@-6aB@*6cri#K>)hKlpN1&+Ml1scLv)k+vuH@_2kjIF}f79+~_m?q&P4en60WEv;o*1)pkoyIuYNRIhOU> z)}6TqzZQSSzL^wc&SJJJ)|FNAjE@e7X z2IolpK~r~iC$&$*(H=IrEaO3+(3#@bhM5ADMAtT`M!58&%;8)23ldotX}T=V&kH1kRZJkptwWa%siSigHW3fmpuc zx?kdn@wVQQ9CvDie}RwL+_Hq#90ZMKQbc*^34+DVOPb@NnCN@Xiy~Rdp0cKbsWvHF zDv){^)6uWtHWW<6_GJ#RH3eIG&v?&zZM@FOD*oo=%Yr2Z%L=YGzxYE8R(b3bS$$OIXjq&Z9%?cDy$SQ)w?*aR&YdN%WqlZuAyhugYL#=7Y;0h z)b)lBfZwltA0G~vRgB3qW$Uxn+Kut>+Ic{f=!K0ZJPQv4Pg&v$LhZ_TeD4AGxkk-m>}vMB^@Un zEzOLV5`6?8ID+@#e298!{o7!~J1xoeFOV;kASOcSjqN}36quH@v ze;PB)*g12b(BeRa!ltk*W>X$!(BE`lbzhjXLMuIrz&4NH+u#j&8@)kq%p3B?z4hLM zo|@!>viD~H=lRL)%Ui~a@P~*l3m8I&a*{A}U5MsS7d;JiPPqlp zz&30-4N3#k%4jfJ39Xa{p;glMVE1BoVs~TrVYg#4PmNp zZlqMA#21BnNBTs-zHp>Il&nlu9xeY7&e-bn>lyWTf@puc`ip_l^^Qt=<+P|cX7FE^ zw+T%S zEj&81An~bQ8*;>&73k2FNc-^SK8p>1qT%QPW-sIn|5f!D)g*03 zcT3k#k2h>^4>mx}!>zxq?QM^3BnMBm$8^}O^%y+U!i}+p7$R|odX}ok4y^Wy1_#!d z*P7RvZ+Vj}p$d7(f6!kN9V49}6{!A4=_IpYPu3tsRZ}^RKPXCBoCco)eq?!CG|<*2 zR*V0eII-#gc`oB2VH|QMHSZ6{`+_zccZ~iFPhx}^BMIY?6OgCW3sgh2=XG86eK3ls-fC$dZ?kdL1H;z`P=%&dfnF9epz|M*(J5jyFtY^ zy;bUoE4|Ay-o@V6sd3tmMW-xCJ41Cz{ZTbWi#AkvxTe#VkJesxmgwsYYtA>!|uZ z`onspp|`QpJk)%|GSK?n+QxRr*29i>Ja%NLsuRwO>JO^X+GCcVR=P^2zMyt!wrj}R z_o`9azPcMan!d08h`!3u&(OyRHxDx(wG6WUu(q|`we_?U98VlH)k&w9?PCWq%b8Yo z=UTJ6oq7V}0%L#W7z2W}2*H-y*fV99yuZ0I{zAbp(PO^BJ=$046SzfgamM{ZxYqp_ zdpdRownb7+Mie89lUb>(Lia&e(rxm9T}RWG)BAHP3x*f<7A{Ob;OEe;WA_yAEki5J$77kL8GHR#~#mMi>YBuigpF`0)$jA zRH+kOdr#)(SOj#4fhR3<2Iww z1ThUY5kHxxo7T>q+Yfo8GqFX1D*guX1#AEO54TPCYi5CqN-Ab1iY}8S7}9 z$+qhcRG;Hm})d?=j98hPH^*KzV(itjwQ~vPK-3-WjfRH?vvG&fY$`VmH+?b9G`BayEpsd}>uKvqo6)xOk4&2FSm*f5vB=qa z>I(NCqrA#8?+;6I&N|j+vF)*W?0Jq2j$V$X&UVf!^%6B(GgDKb?WIa-A84C(n{^O< zRKHsPULP~uGZ>6pjRq6gG{p4LG|k-RPwr)=C2T!m9d6Uvw%KgyW^=tJXdHM#!1B1!9-DonEnTDA@n`W5XnJX=`Em7+! z>nNMSw!`MIXE|0ox;qv+TTMMZ^v^69WtneDSkGI>*{rs`Hm^P3vDVSsvCP@t$p?KY z+^f*#r{dE@c?k&b7yoh1)0*uK=iv8i9@aFwZVOwwp1Gg9U%HDMCy4ed4EbQ*7e0cA z3sE`pg=!U9z>YS2(shMmUZr_c=xCqiTz0vj(r7q3W;A)%DVy(sj}w)R!1~8YreY zrV?|1v&gc;(!=`P8ns=vwY66|wm3#Qjw<&%b;+G22Qnpw=B`N;pKWF|7dVO5#YnQ1 zVlDT;Jk=(Km1X5v9~D(wc~+%WZN*wOR*bc-`6cKbYY3Es1xM7s4s71VE8MHyE8XoqZ9Q!~?K~{g8)cE_N5QyaHIbuw>{{gRwued<++vwyAsZ%iTFxtd=em~Jg z{xjKNtRnA(K!wO^cQhblZ>Vh=|{p5@2*YO(VNZ~Z)vPN9h=f?FesOyaI zuPO)XGinHOD(1Ot2o{Y0M}7m(#vTC4@LzMjIGF&&hu2bE$x?go0>gqXzYj&qS4b3&q8a#)^Igommx|q6= zswk^Zq#87h5n{)xr`$HYL**ZH^rRaNufv-9FF{=WrQl{_C2B({r4;N3ky7=i1EuQe zWlie8NS#pwGxf80>5?k)RP}3kN6upMM$~x5dB(9n`%Af|zb1-)sX0RW$mv4agBo1+H@Pr{V7{WGAHGVOkrw}n4qelx@Lrna}Qf=uF zL}f%4SrF=IT2w#0kwYDa8O7~QeU6bQu9*Jytl*yv_Y@rqSD#T;iamWqo z34|Z34-Bb(?|&C+ODo4^A>W&kVPg4c%Td}Pflt^K2N&*b4ANiWE>&C08}Q-`64%f< z@s}JHokRZ*f4IJ{!eWj46^K5Ks&N0vPAe{dN`h-!VM~=ExwOis^|c{g%nLro{Hr0X zC=YqLQstb6LBdfDGW+q!M*ACk%&{Wy1)7K~j!2>s@RZUSC2-bkRt)KD%=r6+-!x8e zCJ?Oxc^scp%=nA2Fr1m^e+Su7R>*l1X=;4g(64NB$v-6zN{$K-vd6PW*PKsJuDMgr z^fJ79FWvhoHM~}mE=ilxxHK!ROyBk8H`*YjbxcTmFU|b{{2tsc_A&QKuCYK-Fw!^2 zH`jOHw}JPV_nMdV?(`~~j|T5l{ixboqRgqwDQqgr*(qI=Nf!w61T9lf6Ai&cuuV>L z&erVzvU75N7W^vMSFpDLk^>?X5=N&-<~HV%a%%)K0iDk)nvE?q_cOPv_E&3Z$FNf~)%|HS9M`hh@`yGBm!f~cJ+AJEe@EXz#}O{$ zyILPx>uu+4OzsV4irc~-A(T7%I)*wXfe$K$tevcJmAjlBoF2w7!W?#+>bBLRbSF%m zSe;q9?7XJ^$xi8E>5l24=?>|(={D)s>66$K*i+ckSO#`u5J|g(olbM&G9P>ceH?z; z+vIhCT6ov{=6hE79{CQ%1m4bGI;5SK>ZZ6)#1?r@#@Ox=zF(dno*A^6v{|&-w9bV` z2>&3b3ug20$h^Yt@~O(3gqzG=tQzv!ptk8x_sF60b!bjEH#HMd9YhcLeFP<`R-!FI z9Xc&P=WQi#Dc=@6obes<{pU-`)o2ykjJBXxctrvs1fncc{__4$)KzpbaVc>*aW-)- zaVBv-F^x8&czE$s*lUe4z$5q6dD<)6D0j&-VowVt+r#iMJ!vJ!lTse{fP96% z`69Pzj+^h{dLR-t{y&8!pO-Zw&yropE8ykxQv4(z;I9xY7c3LJ;lJj;;$IO=7FK(< z%bljh!QZGXv;faza+xZ8lX9}Vjmwe3HN)LVH^QwJDMdTwT;FovJW-K^FMpIF-$PY0 zzY3-J(}`-|sl;IqNWy70O6R*3p3bfg%Ky2go*GX_S6gK(GGkmH zfz8^;!d96X{R!WNr`R*ufgpx97aK^{B_*6Gbv^1H)D=p1)={Nv^A33C=LrO_6`k`- zQ|J^U>n+a>=ZM?G>&1^NH{^{K$&%yq-e&))jAe(iy_sxRc73)o^)RMx>c;d3uQl|i z970ooeBehOCQCt!)9zsxJ1%AKGkwUe5nV_g@v-@KNH_HY!vJ74Fc=sJ3<8os1MoL6 z6c_@G0#*Stf$6|BUz_Thyih67BCUm2J{Ce{rLh+ z2BN?}z`sC0U?h+N62MBJ3or$k3iJiiKr^rfm<<>J6A%HMKo6h~usgXkIR{t{%mr2e zJ%M`Qf4~x89$*2+0^@+~z<6K+Fb1#!0l*J<05{MLXacqZ4!{Mp1AKrP*a-9j+5+u? zHozvp4(NdH8Q?EqG0+=m4J-r}0E+-GupXEXYzA5ZErG7Uu4D_q1_XhQz%rl%&z)#>Ka27ZRdvI z8aNE>0d@nsfDjM{2u=T{`=>v9#w5ok$*EDvE9oi87B#M#(a8(u>wo@i+-m-UWDVcW z>yi}n!@LMj!au~NCCidOQd^2Q7iZ^eFL_czncAg+PsrR+r1Aw>{oq63qu~?t&ZZVC z8U(SpkZiB&#yv@7pdOG*(8bKLluKwh@i_7oMT+@O?TP(J%O&_(?HLmZh_chrGtdT@ zitrrSNSCc8Fxg-A@C7HWL2n#sXz6e>3qnSG2ifCLO23hf$yOnv|{8hGd_HgMiFx8D&%sy z_s?+F93B%nWSyO;wQaP$sh5Wm3bS&v@M7ev{f?tsczs}PL=`2oRtX&%Qie1N^$mW9T!_BUKx;;6dZRO+HT9Ln#3ohS z=)~xwXn9QSzpNE047&BYdOa;5G0r#Un07`3{PBo6g8vB!5o2U^sHbUsV-0mLW&o9f zy>HseA0)aE@|&;tU&|g)FC+fc1p`0)KSDieI$R0zx0w*WL_04?2SRbrE%RmXg9+ z$!dX=IR}J)HFgd}of^g}!piV6|7GF-RC&5O%NgYk+VZ$pHbdI3vVHI{SmtudXy~J0 zrOPe*E&D7R0Mo;^gRg;~2#y zK*4qO3e^f>)&(3klNIxRC=JU5BnDTDfB4p2<&Ix!K_1Bo3plL zwH6H|ULdbzWD^avAG8~E6YD4|#mFRpy7_f~*D>o}{)qt`t>a1q4Wc@89iyyWqD6zD zaVqgu6^A#F*Sq{oIY7G8kQH&&7u9p>9|YeKrjF()sw%evk((F*%SeK2SdyR$;Ol0X|8A{qHDE4<$F?f^)kwP^bL-Lcma7^ zWpVe2{xAAAy1WJxGf`wQNTbESLCeq;fbYp`6CFZ>OQ#146z^SxMhf^tsZ!z8P0*Rk zUg&D{WAx|sV?!cC=7gIUaC(G|zXGJ-W`jOhY0R*vK?WEf8p9?iwFz@1x((8i-@4RM zIu)^9K#SNTn?h?$8|vpY&gVB!4`J4ES5pO8Z-QqY=-SP{9$qWD5xQzF7u@rAs%9Z- z6bV}j7vbuJR~s$#J2<#? z2wjiQ;$q6<<X;1~huY6Cw!PvcweIdt3W5CAYTn zN4+)ViN(P`ng2AjRp3LtxPyXR``^k14ReG$h2t7#*l$Fx+PMtA9PJ+&#w8ZIR=GYnJ0W@ndQ1B_`!F^UwuQI&v&ycP zHA#O(aIUuv!^+N;3@>?IQY?DH-oTE@=E{1?8wEZlJZx%+Jdd+!^-!; zcEok@{+_9xU-4cIH{!?Q>l;s{uV&KGRJl#+zUIy0(RkaFzU1rl(#m$CE*LBn1KrlJ zuc0%hliR2&E4)=zUigUG$=f-d!@B~U_ z_*ekDfw73tS=7=eXqGhBG+*`@LNeHK_;}?-_@AS!@+ABe{2Kf^{F0~AAFdR{z(_5! zl}`%OMi0Yt%U6fTDOdR4g9;1xyPG}vl8K&U1uo_9?5v!h*$>Gj%u3=#`aM=V#v8+1 z1E0NHgJt(%zRnmv!vyR-8XWtjp%b%H@C!`H-mAg0Ul}?xI|n@)mR7_ju)EZ*kH1Ro zkJqvHX^8CImF-{~!0SRwO)Ho`Wcl7p;6bpil_2^IXsvZG^GQ5L_+RB}#9G=c=_lAU z*)4F#rq)dZo9c_Ufz~26BDNy#xPp+Eq_@o0tUIL4dcK8&ANN#V7$klftD{|ct$D00iw%ahBJ-kQ^%1d~vF0dx{{8`LV8AZ#HmhBXjU!E{ig z2AJaw!(%NfTUHKX4P~{2^ofalnbn?Eo;98o9<_R$p><`e%Jaz_Pei#EzDl}M+EzBr z-NI8`h_5K{v~~p`aphwn3-Zj<9x_#S*R>3~9J-`-6?8Rp6g2Kx3|$0W3S9zST)U`t z1#~6!DR?Aw4Sa?4X|A#$1~N9?=UwMrt-Qgz$ul*z5wsR`7VM<0i2E|KnbP)^9fHe| zN5CVna+ga+M;`;LTpn4L{EKWL>{G%3+X21~ek%N*v~$xT@Llj0@YdKz*(aGg=NeBT z878@2>D92cO>95BGduwA0{6i?!Euxl&Q{OqGOv_c7nhy^ACBdE-c`1MM3sT2f164Q z-&R&sFdza*GbH1MG$@~X+Cff(uY$WawQSnzJ_Wu4?$XqvsTHI%WD9gFbVcnB=uYTZ zXeY=<=mzL!=q6}IikNy+xx98+?KbFkC_4^I;ZsE32{{+imOlpivYZD=rN+}H&{`92 ztCy)}YUzfN){K3w(Z;pbDwQ*)tX(|3r{svF3KMLmiZr+=jPCi`VgPg<+qT&)1h_N=3tB9bTEbV4)lZZ8vF*_(=~-=$7$%3!KYXiz%lO2#M{Kj#QntM z#I3}(BrnI2vjj02PJjd0NPne&r+*VJ(8a2?>2>M7seLId&lbPUy~Y1l3F4*sD+O=)dAtOF zso*8Qs9Yo3nS%2wdD*-M{$jyX{xkj*;b#G;VrX)C(ceW|t6w@my38`uOy;tpzC~NA zXD}honXYHx```$B1b7Yegu<0?ZXT8Wzw92V2?hHK(X!#gHTsd z3mIP+ZwLpGk6e?fNNg?cElo&2fXl~s!~aKrihs-`Fbu5!SWS%4gwF*F3%(RAD)?IP z8HuRw#a>d)awCYy3~?1`HRz4%t%`19nD$!sSuQHiD=#S5g20I?B8s>MG>TJMeTcJ) zo336|{i#~Y?aaN&Ucqhxv7A4AN;=fa!*_LlLvite>U7Rj13&3q(l>DTk9o&%x$=0UwiZmd2a_R9h<=}N|UI0JbFgiYxKdx#NX&@?d1+{?jnb98og7DB~r7p!Fur;_hv}rg2eLt=% zen0&Q{t*+;(6bJ)ni*pVV`2|nbE}pjryJH`Fxcrh2)+mY3w|uYmy=g0Ej(Os1~x7} zD&~QVjpxX7oujmSp*peQgk^rN^gPH5pW_j=Dd zPr$^ix|y{F$@{=B5En z4Ncj(n`ndd7xMAN=Rte9FLN~ojJ$9`tl&lM=jvwWE8EMAtqa$~Tng(@k>3Q#cZ(WD zQ9=vC{(@n0ta|{sKX@=WSLv*BR0V4dwR;i!5c|^CvUS<|?2Fk#pTNiW@qAzos^T)S z4uz|pOu2(T&LKE;61hYz86z1g87cWiabi|6>#Lo#f!JPj68=?fRzb3Gh{i%qT<}* z{mfrQKZ=G=?bq>7F8(!hC8BTagL;+rp=FZ&vGecPWuDx0x^X!3o%p?YfOw#|WAH-! z1S~^bSj8u=XA}`Z#0|*x$R$)FHk*Eqo=5QhF-QuD1;lm8wa7ut6K}`Ic+YnjI-w1%I$j`?Hr4h zFV!^7R85YyyXuZsW87#QV0vqsWNu-GSPE@`?WwK8KFq$~(b2I?dBgcaP1Q`%WNW*r zZfi4Y;|61Y(;L%7bMv1jPk}9AgV~4L_c=N^mMX71$>?eDpYf0&ELdN)u=z{nkIKF2 zi|Jn3J3ME|dBm5l1Y3~Sr>SXqT5c7l4QX0h=8jgNO6mDW%CtOYJXK?>A(a7%B=K(5 zNA6#|ZsmQ-H<$lcZXoFPvVKbLi!qq)P5? z866wF7cGtPC<=eQ_JTGGd{I6O)D-GhIyUe_{>p^|KbO2JzylmH-pcMplHnn^xA3Z4^^?W5#kbR1(&hxMS+=+RT@MeiU8^4-lOVdCXV% zm;AIFmuYYPmo{^tK0>Q2+(K*%3vwF?`jl;;(jipN{d)6NPS zgtKuZ;eU;BItzcb+EG3PuRv1s?@0P2`pZ$#rF10WRQZ6F(#j;xBvqcZUH(zzu> z)-qNaIne)4_($Uu=S_GEM8`nbd0C=ltRO56FZO?foGberftUORs&Wk|J5e&QwbbRzd6q1R_ z{W;*v@)n^?>G;4eIRX5pl&4Ua4Gn!NBL}_(s)CB(ILP+s21vTpR5}`gi|8ZEL#yjA zh0la8`tgYCkn;#@;H&>js1S(>Q_EfDawH~traq%c`E>|Wctm7YqIH>|@@0Kp$Px>K z;|f&hLS#)K7uFnE6H!Jp3h>O*c_k_2VE@12W<-a;^6(=656FeGuaQAzr%DEwJTJ*^ zDy_I#nUKmkbLtEn5690rSjUpev+wcn@N<-1mv@%Gt{TS_DA2W$n#+ovSOD z2b~YiTqkl+Qz+Nb-zjd4iPj6-jSj`{M(jZ}h!&(r!aapl=+|mxp|*$wdRC||B7>e6 zYKkZzL8>M6A?Y6JIq3<>!NH`d93n?ocd%iWub^Ru??A&<=mXv@UW=k1AP6&8og?~z z;^PCg`r5CkYJ8QfyuyHLF8U5CXCBF@<`s1MY=&!QCN;`Bp0&=e~&1u`cyEw_%p9&%b%wCnfD{ILVI27KgLR0Z~R;+GXord$Mu1LDO zjxHr}*qq_zE6NS=oAKjuA!kyZl5?*vU%I`HEZrFI7H=D;5ceP-(P4xRjKu_}z$Fl+ z#>U3Q{;dcF4bc7-;h+)P7V3j7shq1i<#8%nxifj5gK~eZt~OLP6Pm2(68wm$g`HN; ztK5mGf@Yv(=DhcO|EQkDH}FsB zxqN+we_YSuoA`XbkQYqA9nB$mA99bwYkQE3E1O=xBD25(; zg;ZX^FF-PM*hcCAtdF*ripODSgK52ST?HHH$8rC1deKkmlXxNjyPz*)AAYsq7K2Tw zV9p@?BO1p1La+&+G3$wAgnd{zQsz3VAE`C_J?WM(OMP3S#!{)8!nK=C@ zUnM8`P5cAUAY>yL4sS`#V7;_`R2;5^Hi*^>*G;gVehl}7)02Ku-vTe-{}A+H?8UDU z+-9%{O6GLJB+*djXM$b$lvzg{E9}j}lWws3l3KCfk!}kc$ZOcAGh~t|BJxoP92RdK z&&cUZ`A>3!KaIa18iH&B)2TG-3Cu~%mejTEC%SLig@%X50j3isj(Lh%X2sgH_M7$z z4v4dp^O7411~aePUfpAh9NQm1m-<@~PvRk^8h zW98w>EpeSMlfz#JU5)6Knh5M)zsENNGz*jg4FVmgJOMumpA0`Hf+a5@Bq@TgP|#L7 zs_cQ7geIwR&De6m@xBjP{h$HabFKsH-8M}{xgShdzmC^q_( z)I@oMSw;q6&6Ky8<>WjpDapleiq|4`XLZTM&xw`vw(*YfF+6{qhg_uWff%3WH(o|; zL!8z*^xO0l!yN5U!v$j}(@9g2xu<2lg=w8{ePvDBAojiX-j3IfI_C{1+SS2@ac^wp0<<9k}wRb%WpmTIY{doO1eM@cBaKmubtgtM$*yEbceJDwDSye3`bSh>{smLU1MFd zp}E>@?L*If&th(W)FNF+ZN1^Pd9CH8HPOtAR5?yKid|OMLXFWg*Ru%P2UV!e*X~2? zN92m@OP7_sENznXE1M7L3|S2s0NE*26o?9H={+T*D>LPSe=53GFe>g=dC&3U6XOpLkuOPM~&gh)_?Ru(Vu6CFqWxQzYY&vBsHutiytP8BKttnf+eV@IL z<4tqX>!!2B^|uS_-s=9#eO8k}9rdI=I}r=G^SD#FTMTm3HeqvpflpMfXnU)9=x94ac;r3ci-AK>`t=;D0j9OGiU0UnL^o@XI+u8yRip#QFKrL8gCG+Z-R zSe96T);`uJ)@oaheTrS>EN~fInWS6enc=DPkhr_GW!4{>I^H7gK-6R1L)~HRLG66Q zT*EQdb^BHO1lKs%94J7WqkZIg;90^Qgj%fYq)ixRnxp1*mKHW}bBW64TBMohNz-3> z7DET1pxOehLQqpNr(!}y=ZfbQw=1%g2P?KzaFrzGy#y+~qmWlfRS3@t1{O9H+6u$M z4Z_)lS%R*furj1viCCMp8?YBZ7oHbv5>kX`1nY$cfmJy=Pl7(2_q9pVx0xh@G1S=3 zWsTBsxSj&e>k83j%iH#FP-sd6=XT7FdXMAD~WXhWVqrukQL*L%Wp=!y4<>R%CpLv_+r>+;0Nm% z;dHLm{SS3M_A31sZY}3WhOz~d&6E=Y%#DPZOcL=oYZj>!8&AH#{zF1^(@!t>}D!(@lD?Y0oV^b4 z2(Tx-JG`jT)6l&k($J#8+c3Og5ip&U)!k9v3$`GLu{v?LboaErg`tJ6#j}LA#g-yw zS!dX}!kJ~~OIMaJ_g(~Z#O>3=)9up3(yh|1(=D6c_AAAhpV@^V0f+{nKgbE=; zh>*$kC+lD8_G(uco*0exd-mZjmG-7*2XGf~CvZ1V3o=8D5EJBUQJd7mV7|`Xv|+Qj zQWTfh$<1<$yd}bz(?vc|4vte4WJOl|SF9zt1sGkNN(8A@)Ce_94NZUWizJumzmd?SD4qC zSD6l?lh}rZC1FS;7(rJ0O~psJuD=tkrl<+8uF6-QVGtk+q;Gr~;~hPA{BOFuP!2tanW6VS9$7hM|yH6c(1q zM@{r>1$jL_kH6{1wq{QAn*6H#ihMC*BVtZ$cB~DuI~=IUQveiw;qByGE4NjitUOgI zfk$&9IrTYpIe{F1PM5|^!(_yl>@Kh!*dlzV+L^VlYD;2=YJbCyBz7k*CyZE4KOO;Q+49 zLqv*ZO83e4%a0|FCq4>hI|`jV+hte1w}-zKXFa9HO)@TXuR*zyE+iYlLd^8ZL?lX{I`DY>LAP(bhwKi{`+K_iR<#1c@Y42UhPxBLB zcimz@Y1Rw?TN+|rC$1J&v0fSA$MIKAN&FG(#{4I zL5AlTa&`Io{5$d_cN=Fgc^Bv?XlH4pVr<3V6*nq=Rcx#X3u^QK&QIo(1YChI{Vion zA548teM;%mMQLifA{|OUPx;fAQ@2v#M3mYA`%IK+Beoapg&ApYnlo|#g^ATy!ds|C zI7kRYOIDw)D$u2M-Dn+ggR5tXG4yG=H|P$6#q^E1iJS|ZqssR5V*NmU75rWswLHh#+OnXe zKP4Y*LT^cQto=CaaG6iiiG-A7_SILhpOLNzLu4tYW1@=+UOR`qmwdFkkJ{#lg(^#W z*K48!Yj!!NCIrrv&JxkHYH7p}JHd^piz9wfg=UCE={i~Cp}cK&B34$_*DPtC-y(Ul zd9|1Uq2AFq^=rNVcP0hh{hcfVERf9^Anu|qm>{pVn(ovYCY*Sf3 z|9|n{n3d#QY;Cv(o0C`_FG$q+bs#6i4sk&o5F5k-u|hPy-M)<1ik*zvMv#&okXL1O z26h4B3%Plj^{{zrvvdq~1D5Y*0vLeqz;3`Vm{!z*SU(L*8$#=Y>n_+xKY@G7=}k}J z&(MAf)(UQTPpJe&mCUV#$)e%R{|JlG4xv!>oS7hw6ZT~hNHX71ayp3*QPQqPC)l@;ZMhec>5#Lz*wB zka`B=V_hbWWtmCE>;Y^J`5l`;sp9og2z;Z_Z9svF>npJV2;sO6C+Ekoz+5v%G zTn;zQ`@*vauFJ(ffb;_3G~jK#zdsM&fD9l*$RP58JU6uzYsHOVT)=;%OvQA{{Ynt1 zJ~CSn%Sk^VV@NFWarQ$p6&vGZC+@%AjC>g+stm)(EKBsU6d-y zPjrWElBlzPq?w-H+@qC8DwWA5#MP|1*$B@UFt%a1ph&n+utZcRoF{xEEEBa6UE?p| zZ;d~UpN-eW8D+GW9VdSP|A1Gsq@C~-fj7iCARCOknoS-DAdvuW}^ zF*=*jWE|Q20nm>-$t?vE0Dl4J#{&UbKqMGn(W&BA#h;4J6%oNm0Ze#6uuPN?E)c#G zN=1K(qRJcmW&B@Sff;9;ZyRQ_*dN-bIP#qw_bhj@)~b82`>kDV5SsC}1-9WftNoF^ z!1>ZS+YQrJP@z~<4kqVscqx2<|7#qafF#Cc^{arP0Bx?iSq$jzqer|kZEGhd2`@JLWyzRWt#k>E>xbJB6 zyerK;y>}A0vo&`&x0t#LELI`46zmbi42F(9+0DYd(XsW@^|^-bT7>U`;hq@=H(0h< zhFCvXTiJ^3lbTbFN#_eE$~DS$$lcLB8M;!F#lPcmP#$B}qe5IKf0 z5J$m>z{7A6yeqs6{?11PL^OAEB|to&Ezp%SLf%{6Aa~0rCH?(>&a=y5spr8;(pRRj{?kHGB--esaxx)FI4%ZLX*Wlmi zPtbBeUj$tlJMhZ|HQIb%``W3s&uSOQ5iudd5DFR27=9LBS9Q*973o_zsp^mFjF%$E zLNhXT)Tk<6Vcb{VvN^8?FnLUiO%nOY$aB*eAF1j;-^VIk*k`_7ej{(AY*wBUohUz= zrwN}i4=)l}rdz&QE;A^Ey|ou}nZR{L&eBAov2a95j=Wfou6ck|)yzRIi*&Rutv-t! zT`y#gC5#jGVLm6Q6F02uN}uFb0?%fmeWj-&4%-^!`H)G7D|t|Py2vlR!#q<`MKo89 z5Pk}MjI?8+NZFWAwrT|}YEjT&_aNH*3HFn$6V0{p-XxslKz%j)1?ig539BZ{Fr5=7 z&=}xYU~d(&b{_jM`FQnUwZqX6(vUT(ZBq$n>)MyB(krI{bbj>ywob%olcejads`>_R zS+lI>3Q}Gxhc*??D!}mO^5U583J!dDXlV3(eF18Vce1BNNt>#WN5<()*$`bD`dGBP z_Sd8MKn-VI)$=mT$( zcajfQ7~xyxOSE~$+nQ>gMNIZ^Jpa*|cwhh&*aH0mJ)$b}?)LLs`sAZr1rX+wdh7iK zvNf=|>fh>>fj77&)-9}xype0Ey8#Gmr0|i{%m-a5b%|jm(+PNNhqB+WC%ZTtxYozJ z!~56MopT#7QSnCfxA+k3ebiX}Jxr;-9>#_WXbsiHx>mYj)$h?O=v#2tIGyN7{ZRco zy%QDFcBq|J`@D9c92ql)Zm6V*){!YyS!%hu*0{pH-s&)Z;ANfS}P_@g^7#dQu&v93=MR8KGAW`OA>-^N*4tB-PaMNl;WMEjU z870{)Ia9OM_0iQB-BQ)6CbPT-$D7Zq!}L%ruOAT_7X47K;B=&HjIIlPs5vVcqF~!5 z`6l}~w%7Ji)P>mN^uG8q>RL<_*g)irAycZ`s+D*IYmEF0Th?A!V>}yw9k+ ztz#OtXqyc8jBHcJL^F>ttLzu-!yMVp4$eLx));QHN_EgtB-W1;iAKS21JKfOFc+)u0#4wLC7uz)U5sn;Z zU)NOkCr##&@rfqS1NUX~?*Lk)Hq%ey)^otzPn0Q`Yu=ZPNsU16qe3Si%tl?ecwcz|iSyMkU3jw|b;s@LE2OZapQ?Y9dYGD8f4Y8i>JFx%=oi%Fmlj>m6n#XrQXfVbeEksVxF0ePd?&XIhy%0% zKFw7D>42`l@0IVAr%?-ZRQ)9VFMV5W+;G#ZvMg_YE$nZ7ZmqH9*_-T8hqgK6YIZfa z^`62;)s{M2YxjIjJMBtK%+}I9SMzVK5=aAd1U|`GpL-K>12P)ErljU`5!;;2CAR1^92(zXVp$$iq zA%3%X(C|-iV$jg&NxRb<@`mIvbLZu*&l}u~L?)A)F)IieEb%)z0s=Q2N{&raii(S1 zMW#k&fDkws-WNU+UL4pb+a=pA+bi26TP^(vSrAwlm>ZZMm={rA!H~SQU;U3Wjkd}sOhLd&MNR&ZYkxGrG#O`ZssnwEwL@NO$@MU zEZPr+d3XAJnv%oIVdmg-HkS!=wgFDw@WfSj&n2<48jXt(ND(&vo1^;Lj)~?UlqTzj#%ZA0=;9?^N$qXNrfXYNQmuQ)-irNNo+*O38kQ)GoD3EmE)4E%iuU(p~AT zWv@!}Q|~1M1A_yZz@WfF)o|ZiU$rJjm!+%7Sbu4ZK|@d<%$E%aJaK)HbSJ(5Bw}N! zOH`^lb-W^88kfe);)=K=E{^xo?9W#gbWBy9cVVLvZW_=v$TT^=ZuBsdDh+bo{pHaoeS+gsX62+*PYVM)($b8 zH$u(5%zNy;9IqU4=XGcMjH|?bN^{uLzj2rVD%>krEQ$-~3SSFLMXg0w`HT6#gVSQ4 z{X+x=!rg*}qFUi>;Y*=N)KYYrzmUH>XNCWzXHU+s-1m7ya}Nd&AP*uBAv*;A4y?ic zc1yrZ{Vn8nIY!|`^lxs%Hz{fpF=`j=OHn)Ve%Qwx8|_on(!5Zkej|T{>D9NwJE;g< zK}c9ht%TBARd3DNlG8W0UoKqNo7N3CvU;xg6M7YW2kr*vxN6KK_YCeJqNOvjw#8K z<7#v@OCnvYE33!Vmomo_`ZHe>bcs9G0p5PzHKkbqCfE*q2f7&TEj=6Y*e;b`3K2{G zt-Q~?P!b{9s{RXoiF9NkNO_oVwps-)>QH2qfEK_c@GR?o*|BE1v?~cCIb2`h7+PM# zenqMw$H+=dw}c+#hU@|E1@=^7Y8SB&l22FnS9=`wA$^H4I=tq99nLM5<%=6j*Oq-Q#U|e5?RT-j|K-|%mq9E2S6shyf8`#{ zKc3G^8H#)7jZ}(L@*);2!%rQ|U)TuuKZTsJlN=v;J*iDtA^imX2@b^Vf&WEWjG;Lw z4yI$BugG8Q@8D-S1lB){a)OV!jxd`EC$b$}hlMqg$alPCO(k_>cOqY6zaxtrrH)F6 z)`54(cz9bNJRf@H1ZQ51kXEIt=Y2U`hNqEtY)Wqa>PK34b`?YyfOSRHJXX`CH9o#s^hS; z%C%0j+H=S@iFyb792m`An#LvWc#2ivCNgJRAGy!U$7xgf68TKbJLOV%4L8aq95a~1;Z8B{n z?g;ZR{XgOd&Nt#<#!=>3{CDD0%5%yy%52OW%u~h_29xlcXknU}y9k+2#DAC*nPB1< z;sNGC<{RQ$VixHc>nUpjDUZ~^PP2cLvPr$jd)T|#_sIYfl_TZV@q?TIXEx;r@dc$@ zpnITmpi98OzD|0f!D|mO-xI$EmAdn~3%a%1b=r}JQHI{e>qfe%m#MeuhzVszoBNpi znip9YTc6uZ_9GelQTss0Ajen7H%BXHYv*0(JtyAP)zz(eBK@!XiTkPMx#pSXgy*CO ztHpS5+Wx@-=_$b=$!A}It>X=|A#> zz{Wto;K|^J;KyKyR7DDt{Pv(dY_GP5>=ApwUS*FqbvQ4cm-#OpVKos8JUt0L2y9p< zpH<5wUjx4cCv(%e?EKddKtVU~8sHw~YxOJj-+3MKh{>H=vGtp#r?b1WhttBBP_}Z- z{4&ZGu0u9eX5~vM+qgD3dOg}KWHQrd9lQhs9Yu=6ObIddqtv08K-jaR#6 z(`CjCx&_*fZizM)*OZO){pB6)<5d3DxXji&*ee)AF-z0 z8aIvejMJCS)z8qU@c_eFT0h2qJdC;-+(S$A(R~s|3&TT0+PK+RXo{Lvo8Fst`3n85 z{59sAdH2mm%T|lgT424y;1GsdRm_=$5zKFdkJd%D);1068SyBwKZ}$h!R&f~4lu)h zn>Bz`&;CGaMc%+ZN3M39bc}H7o!gw3xpr58^3&DHJr~O3J>YHP5wP<;4IV3JAmzK{ z8ulnYKztCGhW(!NFRnZOHhu+oA?Ahmr592zC9EaDh$DzvfCeyy1SWSRza^8g6Dcdf zKPihaWXB*g&XKu}W+ZyQ~TQ51PqZOe8b}#ZN&0f<6N_+NNa4eX(#_KUz=RTKXZ}Jx&~dmNE#_ zg(W0iVDZ_zND1;%_8T&WGgCw1E$68@eJF>l2d$JwN7A0;n_$_QA{2Z!I2Y22(gnIC zxw?E!`Ss+<Q3UQDI%(Ojrfy%=5kkxiz6nr+Df zNI`x9u%LOUQeba5VLN8)2(qCY(N=T=`dj%%aS8f~_-FYWF%8{1)+*K}W@&6lc8+z5 zb&2J&4io)WZDU=^`K1%yI9 z{Xg9=^aR0gx(L6WQ^w7!98YhfzoMUrFE`Yo-qCo%rHps@8v+US0_L{X;_F&Fr}jC*__*7G*3Cn@#f~W|DBEc56|)(w2pe!YL)&%IG!r znvIdw*7eo1>gSc#G7l2gidHd2L~lZ18|d9tdOf;EdLwex1}(c6YARYun;)&Hj zzjOQ6wN?`%-9>}Kd{=MH{JL3^9g=Z%O|Hz1nyW58N9aD|-d0tBXj`+nS!dTk=M^q2 zAZWYt3ixd>7SGoDQ2pr8$S6Lsz`N4>-qXIMdsPo*Pft(IM#|Rc=FqRAtHnv>j~cx9 zP2I5Ka|Oc-UKN0(|MJ)Kqm{EOyH!?Hu9EXA{>47QKE(=%|H5h-Y1xh9a5~Kx4;fw2@p!DWjHM%9@ouJbPyL zKh1=8+eTAEq|x2zZHzbi8e28`8$FHnjV&4zjc2Js+%U!o{6#~yfOUk(Om>3VQQ49e z<$Wa^CG)*~urS(f`a#@XPB%J7AH#=GRj4zR)0Baj45o$llA+$nt;(^?wE(OOt@o@x z+pW+$W*efv>QCrTq%%uE`eDnHh}k~*bvwl7)+x{%E&JFPS^nzQ>;$zQi`P=Q!B!g zV`jWInOOq(sP2|`SZ&SYW;Fq(19k#-0dBRDZ+G8!U(8$K z#i+2VZ{oCUoopiPe(b1E?=Lj|=f-FzXJAm{SGPl1qsmw9Rqa!O>p?8F6sS7rr{UoO zx&SF|TYA6rNg1%=Z$BdMindHpDwtd`sX{I2Uh$yfeg#08tK3nsy@IBsD#aB7!Bx^V z(p%om*s$bwb!DC~3tZ6?JrF%S_8riz8~~dLuw`qqELm=JTeKJ54*gu*99RDf-8p+Q zs5fX&-6T*i(A>t>DMik5^?QgqzjIM_(Qa29ROYEGDoM_Y^=TwGEFdm&mp4j0YVdCm zFyEg4(>EP70CdDhW?6IIz$TXK3VLS8kh7(qiyl&DVs=}-tV_hl{B5ZtCDKMt@L~0q z{5|); zPFGA<#1e68SL`cMd+`C-ryM)&bJSXmLj6Jh4l}B6hj&q%PdJ1`m9)wtTI=d4;BDUE z+;@3HauK>dwC=c3)$_!k(W~h@aW^?9luJNkKwar2`Vsm}6#r4*ld&6LuWea7zV<=w zQh7m48MdTlD2m_dJ2>QfbYk%+B(&n)n_#@~8=soCCw2$;$#A~};dO1WYc~bd+d9fr) zv{!u%{TJ!PLXv=(@3xo%A9X5jLn`xAz;mnzWe>}am*q;rl5QldO7{?RY>8@vrA?W-c5 zN=`S*vgqQ_mzqEMSp^-y?ZGhbX-T=_wS0#>QaPovYo(&{xLm2oS9Fk%Y@^sBXM=A_ zrzEE)+i@e@_S`791Gk1-AZ}T@uIx+cU)*YLcELa=Ge4)G3%F%$VDME?p3^1WHQguO zH{CDYKOF|$*X_{GHsH*o&0`%ModaE8HCH`{(+AUs((_ZJQp-}~Qval8H$Au|ZZ@-1 z!c=MMZ_pk;twnB&zoAeNp=x1@$IWIW<>5cgFv@GEO#zFi> z0fJi2xX0iTG|btACebM74}wRiW4$0AC;lVMuqdRvtbwE!>`$Zz!Zzeh>A{t3PeDjO;T#DIx?i)3csCNa31weRQzd|SvL z@MiHdF&R(9lko4vZ6LqFEsI~{PKGe#FJuqj%ZFBQgPEqDOG=02GE1*D{aR9riJni5 zul%JhgqPEg6lCz-L>J&^;1}U%;q?d| zUslYKK8rn%VUxHdK8Z=5&hMYP7r&f-if(e0mG)|Cx3si51J%%wa3oqLT#3h&J(v%b z!&p|5l5~%~k6l2?r?li$an@0$QVLWJ)W_IwqF!PT?MD<)jSQh_18L)MKhO{8VEkha zK|fC42me(cX%@X3we4!B)IP0+$Mm7=hH|yVxXBnXv8&{kMV4Iap4xEfq>_1M3(BZ9 z)|z#hNH6Q8dIj?UVF;5+d~DrOI!t;cQf0dldRO@`^Lj~~=&kw{`W5NLGLZ@~S$1ml z8tZad3(0&EOLC%K#6C(IMb=}6s#de{l#s&_9b0qEF)yKXZgqaB)g3U|AKbD+My^6&PVgrf5r~5b6pG#-nq@Pg(xJUGSd^0yoJ&W5^!{(CTvx$^2@11-lstZ9= zbQp!p<4ErTN~NP!9AP1|o^V~ELYziV(p*K~Mjt^>@n6WknEf4b1m2n3B^=@ZKpcg4 z;dTv2`R`KuQSA|%p{u#qpu-SdQ3dQt@I#6?Wnl)ju4DsivGN-t?qzcuc%OL@$WHKv zk}V}WN;Z{jE7?_Y3-JK)nPDP~LUgEHWql}rEWZd4NjKDei@%Rw%1KK%nAFj%O#?NDjN*-nFPl@@?!z>@QSX)W2*vWgUDyd>niOnu2@-e+QpX`NvnH`IP%H zHx52oa1nR{Famg_u7CUkbU+*mpP@{Ki7JB1h}a9g=)D6i^)6TLfc~S1ChDo3ux~{j z#fM=Q+J~sA`bU^reIvY`T8zVGLix1D>dRF{x|X`0v@W>e)eFQkbRW>21k34LaaTDV z=?MK0eHi~%f0Fi}pc`X5eubb``*&?q?Tgw)a#T#jFomiNXAL)1Z6cGavegQ8jd7(h z&*U{NF^!JAFp;Z1RT08|vo?IzEVRt9e79U-5D5Eg-KC>SFg2Q*%!)`S>+qf=3qh)+RL(>Yz_%bn0T)vzQ}f{us7~B1%pyoP$g=c+tp4~Z@oQQ0 zvODX#=x)RB!0*BjC=MzJ!hHVnlGdPU=y}o9AH~nb!?0ognf@*HtTKFt z+Wa#KQ~|1hC?GP39HN9&LP$kVPz6Q%>n;OILbWJqtQcd$m}=KY*M!bMuRtf0vl?b2 zNaFjVHl;sMA4*M9aG6n>4>L$<(mkp9jRZdknS>AEu7dQ3><|)+`JNfxnckb;Ti&j| zZoaR+Z@wCDtyk_C+fb_Me}c#HrkJS;RY0bgQ<}Er$>zd*tOS2#zmgnZ$tg;cwgv1=x_cX{u1TfSc_y843^iYh@5vQpXev~BhtNDX4ynp zx1yb(kAOdb;lN(Lp}t|h_rAftA-+SRDmfm!12jqi7akO>l!{si7YaWL<)RLvoBZYc zUpXfVl4YqfxB3zKrk?{VgUP%bm9u>_eJI~zUvBO;)~F`Z+U9f7UxlxnT|_Go?U9F2 zKXajZJ^d$KDfksY*X$usuceHD;Hh9;6+uttO zJ=iw**#FAkGZVxkbCHC+*5G#F8~!`0+A?7|z(R-t_(-ZaWu@3C4>3PP z8F3%+pTNu5R*oIp5C2dUDFwmu>b9W=d{Pd$B%Ko*7s^67?SOLOu`D3DOD4#xPy?c{9*+ zrJ{y!s9z|OYF>Mqp@`v%Asc#CH45Aq8BjQ} z>X+)RmkfO+ds|qhZei3GuQ%>)ZVvIv3rtm}Ri@#Q&&BUdTYbzby#HGjCR}a4QQlK_ zM|!atV}CEbY@Sdgwam9s>P4&cj8FL?D zqG%wKPP8T-So?Ulm8!tMKv$weq!%Lr+l|s|A*+yD@}{y}db8*m>=E-yNiES;HCp&1 z^gYs@WgtN?zifIhDVmpW%b#Sw%(_@sFPTfCOODmovH9eiLQe)Zf~>)?@*c?gCI+kU zwJX?I%DL)6YQG~HGM8AQqiPO2W+mj#P0rTE1W_sKZFObD7K=bHaqHFCNLXam{3Fr1 zF4cT>CEQ)28>(^;4K-_P)U_(;%)I_6a7`+c0S zWSc-m;4Z2yC`J#`*OE~x73Cuasls9LSS95-rjqgk(+F<~N2U>Jw)k?^>}+A27GHp_ z%&tKy08PNdpv{~usHyRKfE4@{f-1m(aZPJBltMG-z3qH#I14_A{9V`@-Uh@L%n5F+ zn-#nXZv}Zt{{_b5i@5+@u9R3=jQmdL3VdG#BWE=1sb;rDIYGs}vs|H*Pj)G6huVqr# zQxb#_!AFP@rHJlfeZy!TR5jASmrI75Q!>O~(KP=;-K3%!l9`h8b;YV<1#``F;TIK` z6kAy%P4{Tm0G`AZ_*M9HI6Seoen3%BE~4L}X&6W}6OBOsjl5j%0wq#^%R9>ZW)ZVn zX0L>`k29(JF;Ce@%HN!2l+2O*!N{RVE8Gqrf*gjl!5#3)ib3)fs0G?KzQc-c;R-~% z=mpIp)SeO?91mx}2Py8$$I|1->wt50XX;icS1JS8-Lyl{%U(Zr7wsVQl6PzB8^b|R z^3JBR64{AEh*mjp6-@P*4Wm3_7gMY$z3*_z2IzX|8bp7@lnih{{d~}H5TyQTtVneV zehhvZejGjpzE0t`zQ=&DA249-o~*Otc5yzkC!*N#$bA*D2eAurRdEn;SUv)As`zB_ z#(bFLvHKcgFJd>MLLe4c1>Gv{RRjcfK~x~BFjc_QI}7=RG~qeHpu)yNd*MdmoWg9u zD#RYZK0s!3{>-c$`9{I2yk$AdbL@nF(b585fx1D};A(U>b}7rx>kRmi-6<=X-6yLt zdmnTS8ln2_1En{nHo%gyHL^vpUg71C0ILsV3URB@=ALaH&s`2{3vUIw4xA6X0-Osx zFTMd>0K5vE2fQHeT|@}QQC(_fvBe2v#8SI46S@h!2D~UvfVb!L%H5s|0p0+Ofb3`P z1|0(p$f4wh^aCta`tmd+ZAmw8cuEg-l9NrK{-B-6U@#Oc4(10D!J;55X!qOvK=}RO zYtW?R(| z_A37t3B?yIO3;IbNI{POj(aQQaCQ$Vg@5PTrqT{Mn2p0^)46U)bb zAb&SM42%hk4NMA54vY(o56p1SbSE|Yf_sAdgL{L!gAZd%8c+JeNoUfPbSF=$-FcH@ z%fsz+4*2Jwf1^$ZP6Z}p@Bn^mJ&U!3crN>V_MU>n1;ijOAD=(eXb9*7FM{d-CGc}T0S`Q51Fu+_99R4R@_8$}z4W6=i*_S3K6=5s!A zhS9s?A;KocG5k)!UCMaOV}_XEWUeC27tLYj5Tn9Z%(leLOyOV_oAjDBg4C9sMSd>q zOFqTEP8Nt7M0;Fxj)J$37v+qi{E=Mb&*ztD7cpMpPgxnPMa0AIBko&?OZ8QtQr%IV zMZZZ;Ff?fg7_y9~jO|SaOki_2^BD`(I?D>S4X~Bkx7)iqo;f1U%g)v=xO=4gsAiw1 zOm{4!v+6hNiH7Ogj3L|D(|Fq0!F13BF?To9th22UTgFyq-(m0OcOGvAM`O&Gpu!gmN0V4eW;YjjRTK1Fu2bFt{P6?3M)XYK5b2ggNiL-*TI_q$Lx7hx~dD{h>i|^)t&`1K- z0F!&fw%>o=9;?j`{PO?sBe{)*Q7>Fbp(zcExMYd63*1 z9>3~t$gZ1YCc1c4cS1#hBWhb-FZm735s*Loy)sgi0*hepc|x!t1O5#91gZpVMjZ&o zWXoj!GRA!dpP*&VAxsyIX8t62 zg?iQr;w0ff7L|05HHegCeEmngc*k#VYG znxZBFK-E$^V_%5=67Pe3$g$EsM$Og7kO6L}Fmemo! zt2~&l7p*I9MD-Hn9Pv!uNAybicHDK&G36rAC{SlQNu22MuCR((?)@e<{Hwayqbt~PEjXUOQ~|1)$JerfG}97hyE zNdZAYR6%7kIcfOx^ zgAI*_l?JY4xbL|k;jD1Kb-s3EJk53g6XlA!i!Td##dgt4q0Do>j%%E2{BHc0T1MO! z{0n>*T+bVe`z0<3)CQLMdYD#w$49xe3B*Ae+H+!U?7C^7V=WJucfsFZc*bX|zsS4j zBI52VZqd%;yk#c$N7n~m*Qz2?9{zKEKw9E&kjnCs`4bz?RNdkq=eq=bNI1cfXrXzO z$WMPp@|XL{W%ypPsfB%&xZo1{q4Lw-K`NU$;?m%B{*i%$<~!1>(vy)*(&N%hYfNC- zV0r2l`3#|Ln6uRZ71lQiGuWe0mtjW=)Yfx>omLFvy|s;ht-B?#CLjwEY8KbT@JxG8 z=}^}||NH0$#|(P{*U{~<%NRW?miw2u-Uogbc7-4ue+dNAXObNfk7BB#heE6%#*a%T zN~F>YNr-f=bf%=UWOqh!K`~0YMe?68R}od_J@2RFhh(^+L(_UD$yx49)Koa%*QmKj?mOPs=5Ni$;$(4M zaiaLM=#+31x44+7dcgfAdcmzMJ|;XNED@E7wlyQD*DFhJR9Z_Pmwu$Rp|i?QSN=hL zLVZa~)7N^|wUXa*Nts*avnvKvt}3CHjw!97Okf?O94}qMc*p2YxI!*r|4lf-dRC#L zKBiKMCfW+(D$Z0IxGc?Xqx?W?SGJnXCq1c}Ncu&3!ya6Ikba_E#JOMHiSxuJs`*)S zq{hRTQ*n#AmU)J7wB|?2l%@wY0%xZAxL=3qTGN&}LK2mjGLo-}h9olSPBtYsiso{$ zEz2oeN-r|Z*b^0l@w|{AR;z#M{v?{kzie8=tFOo7ZYh9*Mgdk(P2Wi>FuxJ?QYvw5 z%ODTLiek)EV{2sgmC;wxD6VV8c*%6hN!uLkm&O^`L$Q*o>t*ZNL+QV406VN%6BnkI zHNMZ!Oe#Fze4+Vb^QGp0ntwQ-?ad^^N96d<+~NU$a#u0g3rCevy3xU}nKw?AOLja(Hqkwjb*! z>k?}tYX-;4p2WVzuH*zcW8`O;bC~)(T_*2AL8R(lStGMgT%DShiC&2%`NN@!_}B33aHg>{*w$oi(x;=cMY7*yblEc*LViNV zl8bVddYU7AnNe1S><~*u^wAlW&r52!!?^uWXHik|&B#x`%?tL{c<*{LuPcM4`(SKX zxvPfU#e2nV(JVps(<~;>FP-H5#_a?xgXt)rH9w0dvwl&ygk20lb-rQ}rGxfg?G%Do z7sb9IGubPtZwOae!pe*I8?`29@8E*qtKce0X{e4W3&El$*Ct(+J`a9dDUNmW{SIq& z=c(Q}NKrEUElinFS@o0kM&why$S~e;!7#zculvi%c3T^H(eLgG&(=Df2W=e8oQW7} zyl3>9khBExcyI@zGp{Yo0-J%`$)^U)fi1purcK^?(M7xv?FexLXDy9e=8UoHhdK80 z{`0RFUiDqBNAPdEy095Ik@5zDQFRTsvaH#Ckeva#bNmadd?Yl!O@qln_lr=k8_@K} ze6S!bSW1!zE=NuDn#?ws#GT*#U2|?})mi<6L9>#MlzYpN_ZoF1Wt# ze)9hI{){aZJN(;RKM|La3HkQ`(eWxW3V9wn8u|hX5k6#YVg?lR6@3(P#aandR+fHT z@}%Tx3A^kesxpV2A_K|+nKD3Wx;!lgG^EROy8BDgYjY0ekontlj^^yiX^Iol#597{ zKRF;tgsZqQN8E9(;;!nBDg{b{UfSP=WIU>7t46F{p+)IN)ppUn)^*Vz)Z-0F!w$m_ zL)$us@vsqRnr!-Mno-}YzPw>&L&|)`Y_lA<_^e>tZrfm!ZIgPvy-KrPBh{|bqIG}N zcGJDpb<-c#mm1QBU4~zV_H~WMqs9``R1=`SPkm*>>V`Jvt7eDgq$OZ2uw`sp)En)s zB?oxb`2O|OhP4gt%{Q{}&eN8#6=oZ5+pgZyy7(ZkCOn{?*08RjgZZYp+48p~VujoG z*?za}P;a#}G&?nN?HVmsH@3Ei?!B&u{-~a4XlvMG$f@gC*K9m)B$%d~fc5?ADGh%% zv@>5fH(LI(gsf28UfVF+HudJ#@BtnxQ`NA(p`-bh*=0FniCPi1{k9Rdo$76Nnr53u zqFt#i(v7a|s(YjBsz0PJF{BJT4L=R->YT6d9{eee2;hE)w|^M7W$<%Gp= zh1mAkhS)Z%H`wW#9U7T-wHBirQ`=qlPS;(3L{BiZG3+(~>N?al8IKuD%S_WuIrV+( z$qj27+M2JKot9IUptaC8)V5W=n`*HZ*iH-!{7~XDu-+(l*kzOTFEGPn8D! zps)yCEB`1VQwFj2P%f0tWxQYvrL-elBImNVvHquGPJZ+q98dT3{*x2x(YB#;J z`HtCRxnOCrjirsxc5-b$-B(@ry6T2a4PDH4&2j5K^-lXijZQnY zc7X1?j@huKp_}=>IcYth-fcgm(QBvG{-*n(V>N7T=x%;sPFWAC_t-g_0~)P%lXgmN zf894-eqE2cnug5{UCsB*7cB|ve)TT_7Pr;gpQEz{7${Lq}X9#ZeM$HOh* zW15+@gLS>?xD7iR+FFmP_uIQvjxM2SDk)nuyD8^O=P;f#G8B<^xwb6w z$XW@tv+k9yv;Ke{XGj>f8@?Ob)Y*-PjK!uqR2FfPNkdye97p>>{9#&B-?N@f3N(-! zRy5qH8cxb|EZE~ZIEpte50CEv$JNM-O3nI5sFKB-73eF zP$+|0dnp%7=P_O~hEduR{vqeFx3ex+jKj;Q-I+StBH~=m1lliR6MF`mO1f7yg7lH} zfZe%#C;flrbk5c47LKoiSF^ju&KOm32s;rg%V26Es>melcSK2JLyv9(DK1u_aW>5Y|4*rPBF~SB&A54ut=aLF^r@D;4AMa%vBzp0=1ck28@5 zC~IcVWYb9Zt45MOksh+Ul<%VdTh8EItB!O075th#H4et;3U$js7LdJ_)s;D$<79)U zvG1{IoM`KYZ`@+hE!9m`9Ml5x0Qv!LsIIGGpeX2ns((~IkQWrlIj?F4T~P%=|EWTt zz5qzhdsQFM#nw;XxMc7dl@oMX^>1s%cP=CMn(At+1oT>>V0z?4V zoV=X&fM`x**0qSpxuo)d&bDs*&h3}!8tNA69O@EUl(#VNS^RZe$*<-=RXtI40(AsE zQf*RgRJ8{QK?2ap6fC_W^*A*yP7MQ4XJ8(gTNaazm5q@tmUWhOkqwj~Sq#}_*}t;q zvahmlGNgQ?Y=i8i%*|rU7o`@Y#wN!kYe2 (4P3aq406ar|j=41m`v$?hOCGg8-5 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 z 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

YJ`Q2 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 z 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

Z>eZgi2( zaWc>S^H&yam#Onr7(l))cv#4VQ+W)x0Wd4)E P67&Wqn^94wZ2bQKbzIKM delta 900595 zcmXusdqC6m{y*^7F*7qFFJxq1$ER1VyBo=KaqnL_vD(TNm6vlC_B>rI}BUtw-#wC+U@^Y5QPfjIPGHa`dMoNfj&z}*|aIZ$# z;6Z`1@g!*w4V#7O6+MZ)1!RJpaHW z0y{C^H3!9tE^Rig=$cJc<(Eatznh8K%51_^lT0jDXcp0ieq!3@^}_h&bP}IpmxF2i zVC5k%nZR(%0Aai@lUVTKIilp=b;K&QuP0I^JS%V$9R7{2s4k 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 z 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

(mbos` z?M_{0qN@J)i0d)|E2POnaQ~-CJChkrP}QE0qLK4m_Y%cYqc^(lnIc8%?gOq-tx}}! z&2WwG%Vp3j~a1dC- zq66xxMw`l=W5oP>oI{+S`5nvas^l&5K2Y}QNmCo~iJ_xKEedHqreZ%hY6?U2c0{Fr ztEp<8Dyro;^9GbekD9vFSW(4eS&&5SFs~`P%V{q~cVY2n*T_D6_qdDUG-fO&_XEvk zdreWNW1?Cv95SB3dQpYTc;CYr$XF1qUD-PVX;;lN{!wEnavvi(Gg)J3TM6a`GwA{9 zgbztx*du9w=E_$qg07WkCCyCbj2Gs+R!~-{R&{i}n2_a8UORuR?qN^etoH(jq#`wuGN&~hTjlsH~d4GpX@swi=WDE(hk5mu;G zVVbE6^QT7Sa>P`=-9^mF!BUB`;~S0hw=mW0VTs@FF`nmYMAbG-bn!o^HKcS$`%uVE zpD4t7bTNg)89O)}s^?rXEjJSfKycJlQ`N?77L|h%rm$`*RqU*mh1#3w1!}(FolUA1 zsyC4<2=9QTDS3N6&8?YL{e|pm_`gh;X8#dU1?QOSQ}8!vx22o@U%p@-xT9}l4>~AecNi{d*Y&!|Di!0 zqHTF5_Ub56K89+_b0*CM-*7re@Qn_VC}HG-^59O>bcj?7gr*WOQ2uQuoY*g_k@0~l z>zrkp#$6JXZ0l;;Hf|8}0ITV0KZ{f9`~p*Yk5DU40Mc=Y>zW~)htTJN*)K}=Y%;Z5 z_tL9juLS< z$4PE?HYNG~2Fkl9N#5Fhl6I2iSaXas{?n-V{!jI|f(8Mn@cB`b`N9EFHLF&*{(O_v zn6;d-dh!)SyjJtl`RM`Ud#XRB*(^w2)!W4P_M~LHrzB6!GtrszM8!6>!l8xwj#Va6 zI)uVt#%*`81h1-&o2HM*dP68M!1eeR2_c*$V+xH?vgc6tyOiaOVjuE4ciHcZt(=u0{ zSG*|yC}OHNucIHpI+^jeohJItR{92Pm6nsF>Y*gg_(u=X-lR(-u$DX^wUHG})QiXX z&m5x<0Q*GL@%~21JDZJ{ELj!2jgUPeo2Q!Q+99GMlv*q2VG0e%?Ddt2S-Ycq00H-Cc>o)O@8ZHQ4I-d{>%o>Sdil?n=1_})X`PD zmx0S(Ngq7_3M!!n<5uqf^jkr@4VC%o9#b@hta!77Gak!xP3=UfHrsH_8Fa-F&S=-& z)NEpSu3qcq+RT_w{e7A1wUzuj{?5=2wNCyJsWpuI^2td31ygGH7El3&2+>d#|A3r- zB){HaqQBuQL+p(mCiw12QHh#>DX$~Mil(FIjsGYKDhO51cTFcS0Vmu_?jP#PkDB_c zNR>s)De^T@(oAm{qzYY?Cy(+Lf|)hs3D5htjCW|`Pm z2pW5=Hid6(7u6g%X6pXfgHq}q{OuQ;vb*Q;36OC9;W^{obWY6Q)2MvLKaQE&$LEPE zoFVw@lezh_sQhC?OwB(gQLj5m!h`902p=HD-HyxZ0lcsSGtEBLpTW*}-`y_)S5%HVydmmv#B1E4tO~Vb(lwGh5*$#A6n z$J0#Hs~stqW$}2&AmjgP9A&wb)LrkYZ#RX)VKQAJBTePrkf`vBbUH-*!GWf7+&D2~ z=SU^O|Htn^#b@lYV)}FLFU`FhLI02D-eL*~rK>>SVJ1>IPE_fiPPuqOma3-lS1>zn z02F@GA$vkgb@9#j_E$^0lh8lmA5i;^A)lwO`=On}7kpDHAX{fk^O~Mf`nPc+z zZx&Vc(M8u0lF3o|=tz_J_K2wF9ji@#!6Y&7Pn3LAes{C0GwX>c{{scfs93>@8S)GJ zilc|z2U)p#;5^vrXktk6-eQ-dx5i8Er)0e!CF}hYvfhubk@SL~%X3lEk@?10Q*(gf znBoPc!b4XY-*X{Rk?wgW{t5XYh%Dr#hSXJCsQSzLA5jIh^D~$Ik#&&8l<2{t@Ni!zthU16WxH|8KkiLoac^4Zu)L1?t9Kj!IhN58 zynU?ke7%i^0^7uU%N&>Iuy|4VpZO;A)7_+M?v~1TNn}UG5cYUQ{hLEwJLsH(co7K< zXbyT6`+t?sb8VSRnLUdMs~B1%K8br8PTp|S`m0Hz(!JbL@W;EG`Zs2Z%FQOMnza&K zwAlkBZ@*Xa-a8@bRaDff;31Q_Glv3ZHl%!x$Mv44-bv+Y%t~AvnEa|9hy!N zYKQX?fl7pbeZ~aN@%5I z_etx-vnIW2JD&vKdvcq}Ej=eruJ4TGl0utXT1KRs`&u=`T=hMPf+MonWWGh+KWaW2 z?m9d|YSc$8C?kBwcH{fgO%xp8B#|4L6Ci$UjY(Zg);pq0i%smnLgGIM7K*RSX%jqh zSyUpF6Q=wKMF*(<2g|OgJjFsI zoL458s$a7xjfSiCnA+x`m^j0G6gC7+Wes-@3Z2vr>hrmX*704dP2G(Dd|wKQ`%2_c zdlUY1SX6w{VUt?ZM^y3jGse@8hT?Dv>4b#VNvta(ozRZ*xAMIs{g0NYHB|3DXzJk=TdygD_TtnnefPVqI@q>1%t?sPMY}V48agtOg~7Z zIv+LB7bwF;?4yIqp{9@K5NLdNf{A=SMO5(LJbaL7>u<_=ubY;AQjVrCH<(b(ddhK; zHPwWlAVh=8zb!V6sacfe65#GZB@LP;uQ$oLy(mm{dP&1T`hK8o>vGq_Y(S?z+U@!_ zhXO^^x=J4$NzvIzX?VixnzflS+s#tm*Ke9$8zm~0m}F|-5(*f36rUe&yibS4Ji>I| z;ZX9P&jcbPC^#HJvGGw8e)Ev1$Vc>V$Bd1`P0N1=h$?Ag2!-g662|)iD`)D~O{V;l zy_ECrrB;wy9|VVWHw{!u_(PYe zmcLAO^%~Ro#Su}C&so7?g|t3O9vIS>5)^>{$$2JsCR?ty@j_|c$(aSG&z?a~$@uB; zE7o&Hzag%lY?KUSo*@eYHD437G#5GJLVMTwMyWx{Sw2NlhzvVy;@?o^jMPt9QbTkj zIev(J*=jtOxzEwKk8~WAKRMhqebY;nbF_;IG50q)1Thhw!>5731xh_s{VwA)JUL0! zj8})4maiH`mCW)O|HY)Js!vHeLFK{iCQ?Ck9Oa+JU7dQ8y46#h27=0H^`0{s{a27B zM_aDtT}(zZRZ}XyRXH4nnXC?%M1>!v+6BJ1mYT@@KFaTCy?xDM6ZtEJ21wmPGYLeu z?=Z3d^`;!JH>Gxb0%+VHF;yMNEkk0N*OX7q5i`FdC0|ZQiC@jC6+)3#S6+W=^ZHYg zH^@|O>_J%`gVDJmQ`U>cDKtGs78H`tgiXV31e?(Iuhp){wn&>gI>5}ldZnng=tNVR zKA-w84h>Hoxq>&@Q;gGpLQ*lB{+=+YwyC0O-#Kk&yt<69YMHd0J84R0ldym&W%(-n zuN)KDFp>fUhH;m~6yCU7R9({?Q{RynmmaFh*BSry1c^|7e7p%X6j2w5Z?a6&=CjlR zpOxAPXH4VmyT#l_0TRlm@xVbt$Hk_iXHQXO|6xfFq3_H$E!PjDJdgU{!SsLSKy4mr zGnjG8YbpM+c1-Vd5)+=`^BdAP(qZ` z|0dJg=?FV4@M#~8D&oJxHkq7iQl&%3Q6o9kG^48MEqQ(t%#X}-eZu#q4qtX1>A|n# z<2fd?hD3CPh4mq%77R5$5A8ZpeB)?S_jVS^XIbQ(O$7a)A`Kf&a&tgbG>-)W#O7`@ zCEu)MOBQMYJ`WjhEoC}zcJsGF`0J=~9E zHIy((bvT4$G1EAMoD7t;-({LcQzU?7e5Pqz#g+-`{!^}Zc+jZ-PBEo7B}CP3+GHB4 zPtf)5grsT`rsY^4lGplh{jk1-(Co|P|8WR>$-18kkt7H&74GIIEG8m8lkqzOeL5KL z-VLG(uO-h%{h*uc-sN0$=ttrr>VhP#Bk}IH|`&I>FEZXSOHO{6#D@7^oUb3V`Z>_=Uf&q)Z?1^Z3Go%Hrb!=tlIqlIp@K9O!;JpL zru3u!Vh&A~QWX5K0yf%`c*J0TxiFgTi>iG<9eCt-A0CRb4x|u4kZ$k~gRW zR{x~;liJSUMZM9}? zDtI2FU+_gf&$BkZ=padzZVuQPn9zGSiK-q|<9c(SRI4}W^QHdwjBEP6&3dq2S#Ox6%O@>m4(;}X;KNSdhR)9c`@ zleX=hT#s^AAN$NqIV-A^-)vfIq!cB5kIFlArm1V3FRJoDqw9;UOiKCgf5x?fRLe;d zSU*(E1+ptt{dfsD94eDtT`jX{!#_)E-|lb9Hxq0^Z3_#iaugukvbFyGV3K%O4MlqlcpB$oW!vsPBJLrpmE8ox|3)UTN8 zA@jmk6Mm5VZw``rewy)ZA0(={C%d2^ayM5s;@`3&g2+oFP3mW@qN1A_Hz4*EGh}$a zy=0tE1ELz=%Q3-kc`zaIEUV)vf0Q&2^|Zru>uH|V-x4-OsE#?H%4H6S@KcQaQORUN zHO^*96=gpdWttwPj1I})JYw43BuiFJS>z&^*@l_zT21M+exe$lWN3zzlbR_hG+cYe z)b80Xs^u#xT~P8w(zFa5E-Komy$P(RD+Vf8Gmc07wRAT^VGo|5s_!II7n>z2a+u6_ zco}W0z(p=VIDzP7QB`HbjsH5nW0W78XR2Q(u?!_&&Nr2(c@QD=GrhvO(ho6?L;2rH zPDgFa5)%m!f>E!NaD?C;8;qYlL{!MD%~TVAxWA~#^dlyDf03B6yCkU|V)&%) zC-w{PyZcS`RfBm1qo}K?-%0Oy^9bihq-gd6GvjxIMWr5HZNjh2XT;^qmw4G^Q#gRv zqZ-TLL*2i^G*_J$RWUkg3Y(Yku2>@8rK4Ouio~m4<(5-#g-mL0XHlg&!>>5N`G6EY z&R2tiwNWW>I5^FxO>60BQ5g@+HvZLpMCE@r(p2&oRpDhdrh;dJNzf-4`3c^L>Wi4E z+CENH;_P7)`a4lFr2e(mw5(!HSPw0KCf5UnWW$)bM5d8HZ;Z)3v_^72T!E32duV{< zUw;Zg$#|&D_26L1P?L#@sRx;gD?;^VVi(CU%Q-KX%!}-PfbgUqeE*YJ>)XE5L`F>$ z)hxYDiSCd%WPE`4$ ztQo4OssAj0nnK}k2?`^WyT}!3Cn1ENT52j^na%w_Tk8CKOyeAu(NXq;9j0kYTvYNm zhg@DVsL{4F>3VD+u^@ah%gnsGJF%ed#DAvkc3I@&NS0#%aCfbMG zZg@XiU{bA{#LVg;DFiMO&r{L8#`|cFs46lbl)r1xlz-MwRQ2l&RN#0&rul@rW0DE< znpKip!iY z^SyRA5q7^-b-y`mA{XY13jKbdDa~Cjs)bz*l=tm}#xr3YWjJ73ILTBm zW^|0u9eZ5EvLvKNY;xT>K|<>86^N0BikmLE9vCMTsD5^$DSsnRRA?A` zM5){PvAT1MYxpDysgcYT)LkQ7_w?Z}f>HfVq%6sc`qBE!)93Cv+ZY2t~OSm519A;dy;c{BC-|AoT$~T~PKTV*Y4){1KC!zf@Fd2APkjeU~vJTF&ob z{qH>apL3R&=%}7zu2~~dHH@9kP^}@Z-Zo z`S#N(6_E$iOmoMhqN=*=H;GkyM1|_ly7K2p2;rv*R3q+;Tq<#-J{V-mdXrd)rl~tj za(-VvI{JaUOGOJ>&Qsllk~zIh^lpOH>YBl>+o`5U-HrOG_2JVBnYvNr`=fbtnX9@Z zpIAr6oek~z$cXdJCGi0M_A5G|l9Lsp+HpDf<81LmLESWzM{!6X#Ac{obU>eB_|0 z>GyUuSy>%LRsJZ)G{3-qP_3k8C#sXjO-ovlDF3HKKhd&smhtV1iSqnqHXMf94Px@2 z_lokplV>XX^b+&p2B}2&QovM@52ixPCY#E#NupY3A2sT-V*yN^UuWKLq`8~Gy$YNBq~3e)lcJs%Jo&i`E9vB`w4I?nt5s^e0TO9T_u zKVD+W`i>A)P8zMMuA{|1S{|5U!pC^DO$#O*g(50qjGXD*P zzdmRxe>p`|;Ht%@YW`LlkZhIwVG&a~zD87qliw;82>+M(EvhEZGWoaDA`LAM<(TkS z+eB48JkaD16aGUY)7a5K)gB#Xd}9xYs=Jf09aRsjuC~LO@&I-B`5T{2nM!*3xugNfN_wAvR3ErOT`jR>>ln&@*YG0+U4=qQ> zn3C{*I-2a4=$$OXE1{pDx^<+f>&7D(;b#|^x;rmPox`E|6*dl6r8`~WG-*cQiI7Q! z^5|rcCk4M{qy(oQ{Q=PWovCK}{$f%7p{%4Lr(!S-EQfPmA$g^It!3jS?b>Bm^yG{V z)QiH&Z1B;MmWDy01t#1fBFb07m;iO}k#ddrhP@`ZWT>db{i9513aewPobf%v@zW-L z+c8n8_a>XN?+l_j=^$wuJIN%IUV+1yZL(<_zeLQwVmi~}TnAHnE4w0~b_;_Bv>ZQg zN*Y+}L39KkwYrLrS`8U$>TcL5D!h2EsT;ve3e6kowxY@pz~NBGUcU&;4x8H9V;Jwz z$FFXLDVWbkuV#fz<>Dn`DmJmDHW%A3Pnqf`#)xSq7=@O{`@b#_MRkez!^M$nL1{-?PBvJkdvTX47ow ziN%r^nT*{s{o+X1g*7tW4CIW9n~gL5o8e;4ua@b^jFR_tMEY+c;Xzl<2mLAV@#lF2=fEVx1QK!QsMsW z0pFinbeHSbC!_$)x6(%(mCr7A`3dZ>>-AYNcW6P0RYfeHn`BRHv^xM&I^tpCCHGZLOr zn#qLJ(L+`{*L?y0Cahdc8(>=R87wNj_gLevCPfGN4d+en9qS}__zsMaysg8rUefOz z;~GvA6LrUyEBIRZ$TMG~M*wEbjT@)dnSM&9$+g6#n?++IhUed+XjU-Nh z=1olVRV9PnN{2&)NhAVu$ZkS&>39=}vtEbVCwG`sY@Vos1^rx4Mx+3>A(reA>wM6p zURoq7K8OVkR6nuZ)xrQ5Ez|p(>RG%e96h`_#r3zItWx)s7C(au1PTd4C=U-BG*9JW zf@q$%)q0=Tqz@m?H8EWLk(nkx-kJ4Z4!PqFN$xL6 zk^5za|ujQhl7El$AbJd5X8G$*oOyzW%P@?(mO{Qwja#4xhvrX0C5~32vo-s}l$%}eu zeQ35xZ(hVlzDWEtS@%Icc|a<+7U3S8XG-2j$0YBtN7CQz?AqH+($zcjP3DnfqH4!n z@fg!K^*HeZgzqaezL%N8!HL|=vMS$7x)>+eN;}L}X-(g5()Y3z6a2s1Vse+Zm)!s3ZdpppCYEON&QUQ#W~{k*MADIY zf?x$|{!7g_!oTDJ1mCM;O=QSYQStL#Owc*U(kK$o5F$k=d#fvalY|g{acStfu+oLp^P#<43Gp|aBDt)xQseOAbIR;ctx11#s ziIQIzndsfzCaOKRh`PO>sq3+nk9jE{aop71y`PVnm5*e^6#RZaAM<`bVjfbeh>u)F zVu?Y2(z9zc?Df`POy{i3q_`8)euqPpYoD}Z_WY}5oazHd2=QH4sR|5 zckt9g!bkE5LXS^yRjiZ{!Yx}&d>AP@NWHh)lzp$5-VepnG`_P*&g@O^hu#ca#+kN> zqv`#C1D#wKnCzg`89kQX4`X@5^)$7t$*Go;)OetzX`hLXn9D2&?FPAqtYwz7mVwGB z6aHg&1}ohes02(ZdQeose41FI`PB?p1p^pW$5#X=@T4$$5pfp>CsS33l6XG zmjy)S_Do9d4`!pCL$qB3?8epPRtaqS372C`m0V={J46vK*I zhS|@V3-jJiuF-R(0NFFwdKscLduPBni^Waf@H`P+!=p!Q4he&BnE zD;3F=totB3*=u6X98q-}#+yiJlBoEfI+>EMM~U)$#y&FeJ~qS^qPPt+zW<1Eg2{2B z5(74x@_x(M(+6o}Eu(2GS<9$=eT7L}HBXfDT9GMwYnG^j_C==nN4-Tge0R7BWXu=k zf1fxos(Un=052o({HMK=*-cYG_0~ocn8IrnsfpxqBl`Yq)5Ppom6SzXd1T0_X)Mhm zHMOHj-n3AZr=0B^Rp}NJyRDsqRN+_881Iirvq8lttaib3*M3ttaIC1(>yDe45TtZC_}@Qd5}Rv8)m+O9 z1WvaxCUu^B8Plstn}`2Lgy>O8SY5TTwU#M~N*h|AV!Vg^u_H|Cu|`oD|J-S+|3_*+ z8c!V-M-RcK%_cBtqo}GT5(f~O9CM|S!-H%x997o3v##%tl`Pby6Ujm$F+ElG#sm{M z*;`ch)BY=n{XLDMey*BH4!7SVDZQb{G`_*IC^9GaGt=)Px@`zR-xZgv^f@N;A(BW? z_9mS&%vR1@`8^$7BU)uTveG-7oExYs7=htrKi^6A^Y9?&GJeg;lRQfB@*XClc>@v3 zZnL;A>Fum)d1@gumryD4x5Z8Em+QDS*NKlz7nNLj&O})`SFzYlrf$P7Zp~fXmitWn zPrPSP^7T&RInMID!@>L5Zdd3u_vUHt%i|`P+{3NO0@BYXnsWa3s_FHRsoX|dHWKZ~ zc0|$caVD^1shHipB!J3oBrYS-uAgzbZQ;7wBB={`?Ek@GdhJo;?=wwQ{@CRv=k8OI zbJsD+8F`p<4rlfTxtrJRqvQG1cF6SY1d`Mn1eetIbtW?~N>u)vLrv`^FFmHclA7Pg z__8jEO1?Ut`kzH+65G78PGZ%oZgVE*j5?98uoKX)da2#+n&DlA?mo zP^^x`ofAya+jPiQFVo&nt>5mNN!JziH>Ze0ku?7GlxdhcR8;AA_n1^VMP_Kc>@mJm zvqUxJ?=p?+=>>*{G`41d=b0T>jOL7l*R^7bcvOlGsw%6K%Xx=YD7BYgRI5(A{>%!M z${2LTI?i~Njy7uJaT8k2vMj2mpE04ANX=6#$C|2iGN06AwBJPIrXj91WJkhj7*0n5 zw2bzc&}*aUf;~!Fs%E;XcS?(@-*2k-5Moj9t#f@aN~%%$zpx4Rr*s#Uckqr^_XJJF zD-*>0-*~A|%Sh8$M*shcW#n(5>RFaZP~g1RHigqBYgRrM%^N~l=6(NsN4!Xi?c zLrmkhd7^w@bTUmI0?mj`o@yF5t>kY`AK>(7OlhYnQrgL({4#5xafHwrd|$MhCNHbk zC>zvjs*i0IRnTdOsmY|{h03Dqg;~XUl@wjO(ENW;j2?fiHfKi(vHGa?X~dBYiydiPIq1=Ti6DUl>Jry5UD zlB>QbHW_auL}h)Sbwd<>Nj4Np){YfN4@LX7nyi;~C>3OA#0Uo&+mBu`hBLNJcD+t+ zAF|ekT-|p{7RuiCn5HMlrb9z_l3G#Po+%!(CNI9CA7`Q{zP03k_-Kuj7-`CgRH)KG zqbd96GYq$$;XU5P6pUt$h)Tx)s_Dh^rtNVm=+x8$rfkQ2F*}PGaDoSuYI`eaT7TPH z)bx=KE72oa3V_y zu^Lr?5Tu!;Cj)wkYQz=6TV& z4K?8bQBkR9&l=ynA)=CBZZOf=Lqx^?zREO3CimydBzFJ_ z%|CbgO5P?4O{foZI8p>!X4 zT88#2TzIALE;50seo@VnW|`E~xlFY%sh5d@-z~>zyFYAL}$6`N$FBi;zg*)n(4~!E)@t?E_MY;WC%J#rEw%fB{W}XHQ91e%)~R2 zjk1rzrl{vOarNiiU+OZLq@Z~V5l%xudCMiq_KtC_<;TdnhEEP@xnoS`6Wc^pUO$%o zA2?JzFRtbNr2^?a=~{)%bsdbSnbunUtAVd{R2k6sJL+16s+hhD);NllJoaX zl6yOo&%t!YSGO?wMfL+8lXadcJF*|!;CgYdWTU8HqayzIryP^nb)%@PAp{tZP4adkTa;ILOw$L{_QKhG%oLEgs*3xJ zGY#LPRTlzTjFM1&<1Q1JMtYvZp>!|LZ8MEC-eFjUz+-z&>On&6h#uHsnr`UI4V(w(DU!w zDU#cfdY=w^`SCV>yoR=G^odf1EI643oOw&WvDSodC&UilQWlqxYIoU07mpJa<2|Ax z-A}mwFo5^}AIM(#q4u&F5>&Y6DHOEh^Xk2-t>Q6(pzHtiTfbZ zBk5X1A1A~=U1)q=m=VEq;k@w{(g{(;`k5I&S|KXDFtKAKVytwdJhsX-ot!JGeCH06?cpV) zLhX!`zl{rUo5RI-$fTDX=WlXc{E40>w}7G(&q~QH=qGu+@AKa0qWfL3$$WRWsOmm* zjOQ;z&QLsLk8!@>`&IwyXL6fQNp2!b@{ZD;>pI2>s_P<9|B-QhUsu;&`~t3DYBEp7 zMTN(YF}_U~MWyya_`0_f<++?;yrpZ!#QX3`a+uM# zs|kM10wfZ@WgP(JPmryQrVGW zlctrRrON1blkqQY$NsMza$nmnxvx^wy=epI5u8WyYs7D_?k)N47W12zo6J+^_(W(L z`LAWBj^UV!th{WTPe>?5`K0l#*|gX~(}k19sV9LEtsX|l$he^={l9MD`(8?R8glPc@v(xT9j{pf0G(Y z8V{m7gJAsM)Q&$LA`^GJ)|1tS=8i0x!gu3&Q*iYGQQnG(D^(+2RCSqX602B6L;19k zt_9SNA>Lt}srsm zIY`q~!YD}omOUEKKuk!re0|82Jh@O*^vC3KqG}1LG)U|pW5SzaVxH|nYIPTBc$lp< z;5@z3wAM47L&oZk#=o^j)Qlz6|IQ%hGvm2uOkR%(lGpta$zxS3?}nZHcsoDdEcpY+ zN&d}*(vFfDgXUg7lQ?>opOZiKF!KNuK1cniI!s3-cz$}$)w4`Is3j{>#UC4EGM)9C zX|29ln*VR9@iZkwRraOmME!(iSHx?Nn^?Q3sQA<&#{chg;v)b1-^CK#JIo|P>qI3N zk%)k@(dSLp7dMH@zM07hob22IV*bKJ6NOvmnAo5#qDqfZrL0!$aD5t+QUuaEo92h7 z@i)ihiLQqRG1VR<;o8Hd{{2B>_Ai!twRe+ie=mN{{$KTs$;@7=AJqqx*Qo>JuV6#U z19*Rfsmvy~6Om4R%#5dr4I%4`Y0E<3C8%5(jxv z)pn+I3G)Y}e|M9s^F~QW=9<$c{PTn;-)~6Yg_HbmNL2KxDJJ$h7Z@VfJYwSS@dSgf z<0j+zsteJrF5=B!?rI#$(0nN2xz#54);dv%01J*NX9H8!bcEqKiuMFeL5HaXsirzi zk#?B|HU&`O^l7d%k_=VmP*=tV38VTbNdzdnb(8UwtP;Ju)GS-i@a{t%6+D! zgtjg4^ksOje!K|0|4Sa{UqaD)HKz8yVo{!G#Ka0Vh-z9!G#iN@Ge^$LBTkjQE@S)WHlWe=Fl`u~8*lJ!0dPsqN1iAjFM_Bn{H9$-?ViCm$H!G`i( z-OB_w>=%{DJZZ8{oDr4%vu!48|8Y^-_xCc%k163t?4{i%xRLt5;70N@vzM5xlN2E$ z`{y|(>p)Ue_P8}B^LKqkB@abRG}=j2?9aW8FGhbzb=6tdPyFITCi5o+OBc>;Xi;koEpW)_*u;kK=ue^aw!#RmZa%nY)rTY(% zsoWnp{z;M~S8`oRlH^K~D@l?hNpdA=t=-wRyJmN1X6>)pnf)<4yJvRo&d#{5>nlkm zNs=T>HGeCjz3=Kto3Vl=A839&*%9(pQkl(9)!Pp(lkDI zOjOQ`d(Rus8806&v5qH11>4MV{h_M_(a@0*k{%ka>}`s^rCWqx&wAGl9VCe8b4N^U zZwtz`b3wLPZz{HBiYluh!2l)2y-ek*ZlWd+>}fo6wus7W{j2e==qhFmpTBp^9*Jdd zFrIx(3?pO2aFe-Zm}Gv)O!yXN$3A2w+w3&S{I-{59_i0{CFhlr^=x066dVBp%3l(Y zYUpy_63*la?O?13XWKke-h$%wsA)&p?sm=wsr`!hui3|$G^;1dK*cf>-^KhdqQSK$_B=lIM^AK8Nu?hv1uQO+(stQRNACs8Y%Prs{`TqRJC&!3NKFIVPj~0G?t4xNUcv zjA3m>O{^Sz-e%53yFVsCg{J4bo8X_Di;MVw@Xs41b#e3arg5Go>GOFz(KO%ZN+kq` z+TUo9P`z@eX-Z!~?#Bx9J`S4d*L#Y}-80LCRDTfB>0xwH#N|3@!VdHE>X1tugb`TP<8)Muh)LunU=(kAefgp+fe2?6+jU+y|q zE`9`GU2Pi1ZQNK-SRi>S~m zLtHBv<(ie8@p8Fq*&7|$TXP=;+h)<;}#Q@IN9%$BBR zEJbFKv$BKh?oE<|l4tsuirFcm8Uw7HfUkzRVZ^%8hM@7qO(s^zuTgclxj1?#ZzMe) zo+D&EAmch3BzSf+e}{~_o0-(VZx=Iz>=&dzG0RkT+{%MyE6s7LiT}Gf-M8lSjAokH zD+}ozEtH%SD@~vo8CLNBFpvG;ewareZj@dT#)J+T0|9Z?)v)_$x*lR_Yk~@`ai*oxM*(g?+PB5QWURaS`NV$T#P6k zNWzgSBg+lJi$<8zfg~fTpw~3Crx%5(uWfN1ApWabGb%>yYXMVpTe+xO=f++X0>T=P zsYzML#kNptZ{yb}xNMWDneZeR+ml>qyIikPbjTdyjO9ztYt6Yexqy`GRB2?^sdQ>U zsFd!mN8(Zjr|g~i;%ddY6&KnxQ}a-3Q8_E;x`vIA9F#n>(^Skp#l^-_ya0<;;j2xU z*mYe+H7;FkVnq$2s*clFMET#&8qd)py6VjTXIwwbc=lw`SI?pWnPX}qpg~#n55!kTn(JnqpMxB&PX-#Vuah^InCe$8B9WF{KesLC4&Qa_7681 zBh$p($r+xXd11)t)8EyBJ{&w>a>pR!zR|A1oRPViv^{b{GBk!#(AM+E!Ze&bz>#X;oxa8-IQI#{f>s`cN@g-q(|JMdl(PD?i;Kju67rLqr_7&y%_c)W$sfVceo`8v#_Y@U-vA?N0 zvRRbpK%U9Cik}P<{y>_RIm`L1qz^r5%5U2vW}rvP(d5jg&;a6#$C>E;%|yi_ZB1}$ ziKvF_xGqq&@{kGKdr;JrO;kunUN@%QQQye&dK6ckF^v}yK}Fe5N6gfV`xF0tFVp08Bd-G!T2m|tna%0*H|G{P{;R3z$U+J*LLE3RjF~QUAsA+ncAshlYpf>L}sohSAxt@J{ zRreXL>!^69uBRiat_zv;y7r=~_O39IspCY|zrD=Fx0Z;C23Y^kL1Obp8RzB{QHc(u zU?H`~cvEywdr{8g!%d=gqo|1wc07-<-h&uB$fUpDO-vgGAMkc0a~4fQ7|tR3$wE`t z%BhvQR<#m&WW8zX&pbb(+xwcj=47%VGNzg9!3K#SZ6{M`>R;?`0}pdVs^abgu3>C8 zs%T`Chv=889!0rFG!7@`fO_Yiwo;F#+Zs%C#}ZL>7xTgpVHQI*{78ZV>hEAK06s2U zmA{Z&VAKyDWb%G*Cd%`53zKp6UQuap4mfW!XC7FW^P=EXv}0kgYP;t=I+1M&!M>ep zCim|o=9W~MjNsi_CO5#|P^kDaY6@4Z6cy@101J)RP;3a5@3FxJ>dSe7@K2~04Cgt?}^M+Z^X%c-J9mhv zroZxn)abRwb1*6@{?OW!Q%`(p1UDuFDj*35xlL|)<9af%4F_8{^xj@#KrrY<5 zivDYxscT8bJ0j!encUYrqC8*EG8tX+L`@(S-&~O+6AVF(D|l!P<8DAj@1Cwc3;6sw zRNTa3al{v&G12=M(FiS~0a|GqzG^PYGpd)VTGdk2gu6W^{h^IyH*S>jJ80cZDrZWp zFWF+E4=~k=Sd_jX3VHsk`aia3{r?}^^LY{lMf79Bsi?cK!9+$^imGb9+B6N^%#&_2 z?*?mzP}j1HiLm@qO?>E}YwQ-D19*sO7o@*G+f4miGjTE7_BU2ZZF1&tAhGaIsithv zZc(M)l_qleYBBR#uw!WpsXv%z;=l6*Lv-Fr6Z@A>lxH@NTudBI*GxUY*J{)zlfJ3H zsHsWn2`Fb8lguc2kK9~@I&3y&i&)))Qg3GyX-n-__2eN_{}s0r;^%sq=u>oL5Zlqq zWVR$y_EZPSoQJ1oNLGxp4zW!#>5&sMDTR_RpH7p^7PHy^G3As@dib=Yr7?xBQs=rR zGF_@B^g53R#{{HsHLFMXb87tX^H>uy9w|?{Ca&V|uafj%3Be)fuS8bW=!EgLXHvWU z8P@;w*lL=3k|c!adq+*|3|%Zl?xa;yD^HuL7qF-tm9MonxywY%^GsYKEyH`>AGJp_4e7rTUxH_e7mk;w6omp2AxXfjIl=rt^SP~B7|-?HL^aVYtLP`%fKaIBlKm#| z?~tg1&ZO-j{T_Nt@N}UW#)Njn6Ole_oT++^upT01v^frk`b7s#&I1G((fB8d$-y&{ zhXv9fo?+rI(g{U$bXyav=_bm<44S!ix_HnusMe(a){&pIqtw3I-K5XjE9P@@OEK~N zVdCgv;%1gfs1LYZkbZ!x6gdnQRq=fCJ`J^7=VLCNOXTDbh(PgyX0CsiNU{3tl*t*< zAZFAC$wBeG{Y>MalcMUL>Eq}@n%W;W(Uoi*g4nl%O{9lc%=1|iLH$qD&6IQXqC8JC zlEK7}#<{kRk%{WVk*=*Irzv8`W(zZBhFQ@qd{hUV#T*vP)IQzMTfupS)aQFmV<*yS z(eTw=)AUE0X+&RZXJX&(=7sL&MRHrJ=P6!~`jf4VXFj7MOx#GSo_e>%c`QhH7tY49 z{056e{_Scww?oYDsnUSD=MR~w|63}m@tzK*ZU)O!QR(&WJJC zRFUg>aca?iQ~wh$5RT`m_M)1upnHVqtEnb-xHEsTGk?izCe{z24h-sMp4Wjhz2|>2 z=tTL!W2W>>Ld^e0NvWF9$JE@gSyX8S(H8Y5{@kAujQ<{|IaFU2nT*cF161>w#NR5iO)nT3otOhu7c%~b=aU&G*f_J|ElHBKAm@6dE= zftfHsDAOrY)N!bpa9ev(B^R=$1Z7WkGK~+-5aqO)NdX!TO~0@L5)*ElX^J|Y;2$_4 zDWA?huM1}u65T+&4;5drYZ3x?EimE808!p%%T3vt9-fi3|%g&>Q;tU2v<`J6yD}XO!(Sfyv4nw@d1jMAa;9} znbK{%sK&)~LQ(nMAmdy@MIJ(m3ig+*FYQkMvHHX-3Ty$m-=Rp)9EiuJetb)aqYloXcXA^7o zP)3TSYFu1yDw*XntM^JJiiD{-gd?QlqwKF90${yS*s-)vQ z<6IgP)pW9@N!fpppM>fM9R{0}FM5dCyM$YbPR5Niuc$c48ZZRzCcuEI0VJ;>T+_;U zTadVdaJS_k{@*w{WMYF3iEAL|ffAwtvsTdPMk0)Ur-MiMeSLLhLn9=dyXFVan&RJ#;vA;fPo6!z0p(+U=J6BYZe&q z#q8&U@O70YHn>F09h)SEQ1kYtIHwOEO&^)kJ!A?$V8tBD{@2x1o?1u!Zw`$waN(h- zS$E^KI?OAlN&bmw1ya5oZHoR#;V^`$nxwp~+M4k7ytRnk6?F}vRYd5bex`VGrKl-A zsG@?xE#!!z?AJw(9;EWjQ4@B^U_{wiuW>Ft!!>Y*&!2}BQvS^qjiL@mO~%mylJOk{ zXYV8;dTgL%e7{1nhVY2~p6?%B#@EAS8t>XP9$FbEnArG{biSc2CF3|@x*wKG)?H2) zzB!U_tl<~4B=s~AP^7<1;1LBsbu-}^yG7;oUS@Lk4iFW)fmk3WT~jV;kJ8yxv(~yE z?aQx;CAR8mioM(|hK=XEc)thre>qhCdfJ2&e4Z$ta@K^Kj*2Rt;x(1eoul*;shNW* z$%?6$J?Ux_m8qyaS80kjvnB|oFLyVdml^M)Y&6^V!8ta<^$+_04u?cVGn4k%AW=o{ z^e|Z$ZjUJ*>1958_Ewhl=@Fg_KR7xS4vQN8G}xgybv%`7cgW->9ze#HdF5^cEM>AINerM zZPytl_kV*#Wpx=USy!)>?3*Y+)p*QI_-415LtABn8A$!-Ljxtff{rAzxATvq@&fJ( z#NTaiqS^gK#U9NwfyrG&6~4*auUT1T6tW;D7pWv$?46YMfK_Ix{3U+ zoSSBd?>_4MsCy~5t417j-A^4LReso2aY}qBTpe?*^GTt4Yl8{@Z;Ys_MV*ZE_Hr@n z30$J-zHz4H$)lp`oer#gQh%Z!kHSv;B*w!TSF-2~IX5sBXXbF8BNgG<#y5PJsN5~Y zf>iTOt_v9rBf6W|5vsd-Oq_{ql`~|uadMkcL=wLH&KosXeCmN-#=C#Fn2~+Oi^+#q z81KD{#r!)@yy}%oGx@-3agnHWpo5e=MHwgL{AH}kZO+v5Ud)!~r2*L5v9-H1-uX=2H~qT+A3atE_37A7p2ab9Q6oh9AR`~hkQk1?go zxr31N4?ZgRSnFfFysL;#7;j>Uc@lFt#8)pjHJ6MPmC4*qX5|r3rKpPX>7^Yct7MLN zu85eX0VSfMJ9?SA7F5rJGiQ@Y)D9&&PPvYaTTRiHN>OQV6R=;qSuQ1j};d5N=D1LRWDV)y=2Nb`=EIDE&9#g%2wy385bgvQJzRJ|m4^Yly zBTXX8-hxP5--Y!b>#26RneI2z-u1XP9F;V9u4rS5XYAo=w@1QD>Hnj6MBLPesSgC- zBfQPXe|Chae!rurrdyAj=sziBh`JVxsNu|^1w^8T{I5g}ujJibrs#v6qS7|hy53g#C1M5;HACref|UriBV`Z1s|Fh9vCX{IoB83m z7Lc}~g(>==H$Nb2%C4f+Yp2~T!Rk$6nX6g#(0LQj>Y1F!@|%=Xys3wzon$GE`l`ezng;VEgy#^SKL?`LCtVlw z4pnIOQ@t0Oror2I<=c4Ci%iBfm0~X5%nRQv z6PEHoLV93@neZYHFn9__n2BBYi@9dLOjOP_J^2D%SU!pLH};##UaLekJxjm|1&wP= zh~@(@&9xc6`g&^#6D~*D)7WClXIFD57nt56S#yVWjKMWBBJuI+G~QJ zEEd%e>S+oqiPxj<5Y;VF*oFP!QMZl>DuiD;<66kL0LA1Inze(a7=?>wo8p!9qEPir zJ5zlPvo6={C;s~Y14wlftJ)Eo+t&4XTtX;Z)Y25M?8-mD+|9RMQ+hEgV^qtYrsSI( zQMp?Vo7hcpQ8~S6?ckf_GZnKK&Lh^VH=N#5_nymlH@n-Q;TNB2yp6FT8h+hi8v8J3 zr*0w)r}9%w!&`&Jyh)}Ua_`t-a$cp$M(o;|=e6V9PU>5;sMU0#{cp`-0pBqCH4DzK z<*kRWh$ov_&KbqST_YpnGjv!+YNut4YlMeR3o2NQtoYbe)gmG&D1584$+>xoC|{@M z;^?7r3k4%of}jJ!+xD8OMlzXEa8yj;TG|EV^dXlE4vW=Pf?<}L*fqx#l{0EacI{y^ z>2{JA2jX`6gqs(EuKuZ7Mg6B==qMOUaQ=eRl+TBE$7a{R(!`6&r-!@t?UKpxUbe~j z9@--2L9h5!HC0bkWWQ_pc6vyd5Om$MQG9UT?gOU}>wbrrivJ6U${p>B-LQhO9lf1z zW|-Pzt3-KU?QiNk4inXM*J|S%MVA|eZ}u_H`YrVNSP$}4k!vfzzcR=`^~9MbaQOx? zSCeQA=c{2Rzsn&}!6TI2Ktt0xQ%HJ_s{5%o@&BL5(KtHC_1$nOH#<2q)SASSEBHop zRil3Va#NeyAgVH(<++F)aRA6$_p=cl_w+*)jzN>4U^(jyJ+0VnUee8%m<1`A`ynyTx_SVHdDLoWYu$yIqrTz(?i%9rZO-zd2# z*xS?OW&}kQ9A4^rXSoz0)@!Nj#$M!qbI8pm^93>KWvbExq9)(QN+pCk3^kFAp`yYU z@qAE$b*5wqk6t7_olVK2@r)(MOSXTwshoOPR51ZZmF>$ksdsSybCA?QB#t0G-quvM zCYpgj$z~JZ-c3|=3Mur6&EH^xFOou!2I|AAvMyxPqH2G+i8P!PRlmWNKeSd<=_?1# z)c-mysrka>@gX`DaQb&LiB43-Lh2o2iteXOAF?y~iBSE|rLG+$8mfQMv?BARg_5~! zF*-|DA_w~<^*$=)s1e6adSZ;I$~Nuz{5b^5Sfzsa4)TByEh2Fov1jW|@FiBPpy97A zO<7lRH&OK!k7q=hT=g4gh{_+f);I&!h)P@?H>o4LiYgjC+hk{Tp#R4qZ+>T!`5I|g ztEhnY+5*X%&KQ0=pwR`w_m1MmY#R3W8>2AKL@CG-CrLhTot!b?O{>GZgndYIL!$WH5KGS|+L%(u9}-fAyd|A^t7 zOgtTR{X!dHn8N*q`J(Smn9AW@L(%}+8{b_D74KOi{t3XH3JigQ6nW zP@n+y{E#ZLu#3rmc&y|<>@YJmg%%5mheKxK(t1%v|F_soTCr0my}B1{sr1_}$vQVy zCe0Wvlm3y)nMFxQTOlD6?@x7&q}fIKdwdM29!Z;m$Yic1R957elD`n}a5$8{#yAco zw+}I)$H)UgaoH48R?U@*Df?N&jf|{wCN_SosPfHh&0{h-lR>|a<$S3BGp!{&CwiNV z8=1IN?Y5ch#!cM+98x|Go_C7#DM{}!%J^ctMKzHPr+hIwnwUCUOvAB+sMx*ZO^z%R zb1lIo)v4T61jsQ$PS<&^zHKE36$QH-J&6C|A~X4t9-{n{sAi^eyPDX=bfFP{nDTol z__(#HYBp0;-nBzb^|^9UjT?`ej4I}eQ4*MKrrp#*OevdED6cb`1FoW0zseZv>Kc)0 zs)X;Uj#FIJZkne0tUIqOXLRo6x;j&)soPhb$A5S`IUXwj-iEx9v13TMtn`4j<*2^y?`+huUk8 zo|nZrOB%i}H_nt^ZA68?VZ$jnr_Y*L+Zke743`+DT@x}BM~xEU`wyQq)r5&}`GC23gdB2ubU z3$N?q!IGw0E_Yo*}vLxe4p%uCeeLj9R1 zP2dVLn~?L{PUC#tgZeH##9K!N6y#sy3jU`Vg=?Czfypsb_`nL<3`{>{>dtJT&0sXN z(Q69MwiT7Pi}gPo#CuC;Q{1ktm}Z-#SY4QEyu+viiiU#>$KfxeMkLBsGs%pIj|5{> zf1PTomIp&8Om1}LK6sUI@>!~-$2UDldxmMLnfqJKl>vVwc!+GtP6sYwxTt6qIK)uR^ zsoq*XQ&s6>Qn2DQx#*)S4%RnY3m6C3_t) ziJ#kx`IxS`qlW_#le}n`n86eyRX?y-yZVt~m8u@-YG4x?_2f3!w3U)n|L1W%8(1VdQ-2lK2MS5sB#}9a;?ThP0dG4)u47oy=&qQo)c_Ja;U$_|Cd)(eBcQa`GiiW zI(^*K9vLCV`IdhGB?nkqhq~*IncC~~M1^IsD>orwRBs~WqQ0qjeY91oQCdCLRX0RR z5xykLRWwY(s^vjf;U)>A^abV(;DkPB^(w+cNH9TY4+$g)4{7IWe@McrYNV@ufM26> zyQx~ta9iCo&^3yW29c5uCikUUQB{qLP00ryQ8l;l4&K84KaKw#YyAJ$Q&i3C`&@5O zxmZ21$T(Ar*sYw~E3nR_-AgNpqF2a_!lZp)C?#9>l zS1}i4iSGg@OY%SCA)}5mdQtzTRYT*#Wyb$4r7{q>uHNLG$q|*G+-+({v9SR1pE>7x zf_e|A&LNE-C4VJo4R3$qhH46#Gin8~K!?Lr9~;J*!JKh9U2K$hX)vLa%|wMKkR1c> zGMZrZQ7aSr`x;R>JI)#JmLgH5U!HZHDwk3eeYM)uvWi00w4<}5hnmZ|(vjM3x2rwt zd(;(Y&dcJAKWsm*2WMQK=W0XvMztlBqb?)rq1p|1wPtOQy3AwJYZ)D(^5RyG9wgvD zXsSLtB&z-`rpXYgW3~fvCW}=xf0Kzlu}PHww`0cnG%6~%aI0y!XBV3jGjrZ+rOVq^ z3Q_mZQzrBan-wFR=B(zhT0&neFyW!cMO9xHaox^Y-AuWS{M>l8us7MAXb|Hlb7T!LI3tC8_3}GX;GKcK1EN{-2A| zO#A}YWU4=GGycce_eCvQX`)>dV*b29q6ls2V!}7^Fhb}G79OGS$&;qB<1tb7Eq0sy z4Xl<@TiTmQ3c<`2XQ)(#ND@R@?rBr}V@omL4U}T_@IF&W&cDiSwbXT0d&x!3(_35= ztEf@yL#FnTMWX!s+nfA<9uieIslAD8T}1xB9*%D_wcnf)RkEA*0CipYgQ)EuFrnX> z5kuJPGgGr!XpZu$SeA*>D!OLMp$$N|Igf1RXG%w1xZdR>j}WELcNIqup>KKSBRrad zGAMg-jmep|N|f(`^(MC)vs-HDU{iBNktpwOpX<{x;zfPST2nJ-iYVVh!%WU_hGFWS zeI|A*`M(?_w|hquZ8uz0?s9f1L4Nn+##hQ*jtU+#PVf1m5K{9sqPqy=BlA)A zd75m%OibMAEG6;Il7Et55PZ!UFe3llQP<}zuS4UrEll3= zuA=gt*(OwXT9o&?<*wA7;#D86HdS|S7BhU2RH1rfU)P}=sfO42fFhu%{+b*els(Hn zK4|!ikq#!j!CEfUgELllI&UfGrIJ1+VamIcf{%*-t}=m%Y*v7(EyRdX{|eo5L?ZN{ z5MRqmX*kjJCq>2nKGy_i5gtWD|2$K8J*AaVo3qgPcuSSP9aV7Pd%@-ZGmm5VzTN3s zcTjw4XPWD`F5-j#&bFqe6L(3ckRvsB4L8Z9>qR9VUv82u*wqY)rF%`XQ%6yWuc&~g z)@^WYXE$_ps+URL$OA?d9Cyv4ygv%MtuT$hlNXNoWm%y8_s`-ns}^=L(H`?f<$u7# z0^TmYT;oIHMa^3@o$4vZ0PtPFBN)ZwnE6KTMJX;KpSdX8!pDl@B!5QL%{5geTcpb2 z5ZQ9TlcdbFs-g)~l>@HPwDQFP-Gll{OB zQJEP`MtD}iVP+zupJYv*jy5vkU%WNy6V`gGU996*pPX{-35pXhhNB~vaJDB>F)7kNi>UVD+GQqhqQ4P1V z{uiO2Nisz^mHcmnKBx17@LkPK^|g!()NQVCYx<3M4@uHNRNQ#*O|s^6H7h5yclrsk^VVs1M{MHAe$%f$U#MI~R_XA*Mrs)UYV6|r+ZIWxrw+J| zWl9nS*SnI>tq|4t`wloecnIt>{#hq@4q)K|6YbiP4hR0sL<2&bdzkQzy#2_3hi%l= z2Xjo#yy;?|?oNLI>v%Vi|09hUe9dN={ByJ^Y7ZORI2=lAH<-L1e4_Ge8H}L#;nAjW z=MYhm4_OV1l1~Sj;^QGPM;1vj>aLk?!WYu^D_>VvGh#<7f4(VQG*?upZXDx34&G}< zxgJ@^wt57avi7+C&_$-AywhnD%%umbCen*VRgwq^Lf@=2;Zd`AV9lbX>t!Nz>s8rg z)&n8fHOG|Yu;2ypF0B9KAkMW7Cef0M1QR}GaWRVil4dds+e_w@wvt(}fb%rT3XG5} zKP}@?Ry(WjcA0eAca=AAxGB$VDXOyBU=#3qMOE#LnEKTYi@;U~BvQNI#NUgGicY4p ziP&R%Oz`Orq8f&DHHCkkFD8qX45-@{HKCu6a(fW+tb#@hUyQ(h`Zw+L#I7cNA5`Ghb!a z{3@AIiVj7~`Fe_Em9>+s;4GPNte5NidHnf#l3tY~jvlgi6q)k8W}+&aZ7~6E9aZ&7 zD^tIkcpf4|O;vmo)9#3Rdz#psN>Sbq+nC_f%eZTnamTDSg*}IgA(g)nbssbT%Rxe? zc!(f8aia!V~Fe6y*V z4uAWR#`hw35d1edl^iO?_Z_#BTK}YLS3B{kbIgFkKV*xEPnk=| zJdtLSE$4FA%$3Blgh^h-?<4W`P}lmPB-D<2m-EX$Zkv7FGPFwSI4zkfqBT>qT?O>% zR9t9QRh!+$|L9rn4m`Kigg)plD%`uo@$hWp5$(Lk}G_L zDH=%14zeF!WHO!8l3B}!wzW~oYQvr3a9f;Mbsod36HJ{&Mw)V8iKxm8cbP!m z2vJqLSo?|kHSJBrImg{_PU7zeOf;7@1c*Jp!vyCuqC&%6drVb4It zp;HIB3l0*H;;Dtu7j!rf9?F73RClA%Py=1ThdL8v!hNG$c`LaKkUqs!O{48Vt^b_y z&E^3GKZ_5Q??ski=)vEsrSTo@K#&RV^mgr9#9e^j8S}w^SDLB0dK*{&Hc76ai-p7! zM@*8bdzE;(gGqMg8IQ!*+g3wR4@G!u}tpdH(kq>MEjfK*5a%O`JLp<_}cI zf`2yK>ZnD1Oy~pJ0)%_h79jtpHOAN6!!X_>xtG+N$ksNZNXc|BR@~-;osu@3V_tS1jUU#ak;}+lPr){b8wb{(MAK zqRkRB;io~Oif*4_GM%ZrB(r`SJd!z;H2g5Ny2DXPy>-89KtNK}t;1aXS4*lH#CedU zH>@`06_nOfmFv#y#2HniOy#9iQb(ZZh^gAQOO#Xp&Q4MBZ8W_Iz7RAGBcq~1Je*WG zo%Om1?V~4*@ZCkG`Z_K~b-OEkSu-)E3^-6*ywdm{BLx@!KT<&#zL!K%|K~FT!8p;$6lB?*TAn{a7lWa9YRATu+lf0Ua2oi@* zxHfR1Zg4p49N_xTOi3Vlv)5J1)vKI&uE)4YReXo*?~G*B)3Z!LzrmuC&$l-5X2Zm^ zW!@0}$ELfUXE#JduWc()M-M$|J`vi&)r{~>T+PVeFweDx*)h~S)Bd~_obe9t0`gDt zXW_eOmdXEphM2t_B_HvTr%nE+q-Lq_5~kGIMEs9K-f^KBT) z`*7F9sCW@6=wiz9Dn(7r-sj@Bnu_wP&Y2KpcvbkX-AvWJJwye0S5;x_O(x#u6yuCj z;`C#jfy9+#OzHp{h13D3rRYAE#US$qf&z<|pg&*tkgUdE!HmYhmL|Qix2V+HDoyt8 z#iGiqcDo{s^UVRysE(M*OG&*(pm>_8`Z7mUy|aM>;vdIMbV_G3TsxE9+RZp?==ZBn znH5KHNek0(KP%Z#cym`*J~JJtW0FyYPN$l1I&V2b`{tSO-3(3;9M{!2!I5Lch!EZ<_1U0R4ru=$ADu!j2=JNbQehWG)JH#1mK zrA%O`SZ~*3+_tJI%Qd5wBxg7rc&k-GKhiJ|Z^k5qYRg0f{Bzp5p5MrQyHN_CN|;Cr zN#~fFlWD>qv=UV^xt9qJFB0Y5Gt{;FG*R-?61#rCt7iv^IUFkf*4j0FiBur>enuv0 z)GAlM9g+)g$MvpxG(N~p5@=K&`gAC5$r@mkon%K<6bBEQ+$H@)O?`v~j&L?DG8Lni zQvZuX?sWm&OJ7cyfx^EwM(LTw} z@R-aODbc=!Y-s-T%on>$R-DEy&gR4ux1BeX{O^fFB{g-?c^x=o!d#O+-6N{$>G3AM z^CUUGl-w$zx(#B_9WeginPNd<-z=B!AgR0uN#osYs(9S0(#5Wv9bRTiy(A?%Yz`CX zLjLYSljypd9A28(G-fVQGd$e(jt`qf;FzY=^!Hcda6mx z>nSREX`V^Ek}4|MWsXT4ZY$>9QIb%fFcMN{R+(hqgs6gB=9&2A4DaDz%usCcNbdgy zsV*iLYv5}^=M#|=ZB6c_BSq!?IM3wQwG|cqE13}}J4kLfA|Eh|hVr_Zrf~Waj!FlKBqV?lWmiX419GI&vPf;Z7EZY#JCfX{$+}K@J}( z+j0RRP{A-9Rfmq5`c2e+LxdoOitpn3K{QC)f!On1O>o6bQ4J3*G=+az#5Dtd)YN^N zC5|3yOG}LJ@di=;Kdm&rWox*2xGs7hHojwAD{5m~*Jlaw!QX7OYuFI+qo!MTlYIRc z*AP=U^LR`nc`1)&BwjgclGpSk{&Ni%*x`k)cNq<Q_kaGoU6}u6;V5!1J!rh$ zchez38joDmEFhMvHgqwO6DzqmS4#fRbfw^HvBl(_plAj1>$aQ7NBihG?W4D}+Z67a zBPuj?l!-Y1sg(#qM|PO-m|mjFJJ*}0d*_KNpW4+pcf>^{x_L}$4i6&~jiay(@)nl3 zp4}sP$iJ+o$$W2(WNxHmvyqO?dp#v<7JEz1qF<4k-(O4~k6@(FWC;!`+hv*n3(!^7 zw@gr=e$!SHNoIYV<4gEE4p;2|^zvxq zzbPWh_XBUI+Q`6D?dfd%%?@ypVc1TSTpbgYczUEswvLNRtcaTAHEX%H)=J`A#sq33 zx2$41$NZPZ>%Yz(F05sy;8s>SqAJWY8a2=IKvElskRtyS2}JN+>@|^X<)TXVP+Sz{ z@j<5IPHMiQcHcphvz=^rvxqaAR=W~ZL~!(wAkL?zb#WzGwF+l2`58!bJ7QAv_wiBD z#6BD}nIG+u%&m+ax28(wN24U`G0diE^^>}zd?!r$%s3w@t7d$eCi`=$Y@o6ogHt^O zBBbD;>RV>1QU89Li4ciW@z03!AsS*$KVmPOG{M&hG@xO8ttsp`LQH@%E2#VQtf>t? z$!AYwZSE4|??^-qzL)pw=f7Y4eOepe@lImi8z?@thsh@RFATZvAv*@iH``RUTrNZ*>#jje7lLy9`A|kQ{GK=mdPh1`;jJ*>^FqZoylRuFI?wpN8kbe$7x2@ z3#lgbAwx8TZ>HHr{<{lYACg0Ws`61L^xb$-;W5iiZfo)eQM0i3dE|^N+`{}1dAa%U zU3|{u{nSxZem#>z2u(d@A|KNls-MQ2lFxgHY8u1y0cBrP+Xtl&Z8L>$FAz0(;cVA) zU1c&Fg<@Bj%8*Vu|4IT>@GTD-f1d?hQwzABmb=~~o}eiA zru@xY!r^ewS(AKYF&EWhNsz;%l9%yoBwn3wl3fYYB5@?e_1-KlDtt=grOy6pl62Ko z!GIhSZ%*^9+VO+I|M(Ku3p~sm4mHn}xZWKoHOT*k1_ZvA+%gC?%y(_2^+Nb&S}%mY z+hf8H_7jzN?`Tur)JK$aXLpkzJfl(z4w$0xyZA_VNp>F37d>SD^PpsI-wqxm|D^uI z<9w!bHcM*hZdb5KQjz}XSd&^x?--Ts6DCl7N>mjw09F4%OB4CqLQ(P0iJBu?K^uYC z(lir%eG~ityuL{qQfMepTSos3z9$$+!ha>fBKTfuY5X@25as)k&rog3aecm*&vY-J z=X}?2Vn(PL*4ZT25SBq={#lc3Gf-4wrPGfCGhf%zu|VPoJrlL5himr$NvQwLG|5|t z4XHT{B2jQ#2NQ3;md_Yh3^)F{{lqK@h#%2z9bGr{l_)}_eW|e1mpDE0H?l37`jEsE zRF%^RA(tncs#(OYriNkjBD~831o^+5F}_Q9TB7b+YKI_y?|$RGp42Rro@erYqKFyt z>3}Gw_z|+*Q1~fBCqzDGRDzPvx0}dMr+MIz8JFiOK0#dvb##geHPVw&M>9?M!8Kfr zYZwt9FjYfFin*7z1)&?xnD{m81&%mF2Aah69Ym#;bu>jO14U(iN)?=4Ig^-hcr@6Yp+A!t6h>J?y+uhW3A0=kcV5w2V zmYd`n9zaMuGtDI1Y~gC(!i7#th-9~BCh;BPKRqNit#R$<52;_fndB|>*HxLgV(SQ{ zV9p6saN8EHe*W?2>1rW<(LmP~8@UUJmdsu2T5^)RfMNR$)B{5PRwkuT^ZYo*f6tG@ zG1tZvse$j3T_(595HVM`l3c{^=b}OF^K(t{2?CGmr+~@(d4#C^hP9?RrMsxe_Ti>v zFWognPEtu5b=Nx7e7$zPl;xM3(9wfj#e804nSz0@BQFMJAMP^6(`v=k&y!-rSwyV- zU#v5sMw)AcSCf*1DHN|!B~R=yh2MEam7JSq!cNf3#eokvu}?!F$0e*X(KHRgaB!5gqfwxtj@O&+JAT@t=8&fX!LXczU`?e~R=fWbZ3Cm7M~j0*r)I)lUrBP`@?RME<^; z+ml(*gB}wlwM)fT5^_WE?Nz2Bv%jdq{@vivq@Lbo!k#{&LSJ??;bD2As=L>^260CC zvU(F7w~!DjM(!|G)AtfFB@9#1)%cz~!F_&0{8x1`z7+&E;P0Ded?)CvIC^+L;rc?v z2meKM64bq`O>Udr+y%Ircp&mdv@pe8&WPzo2zi^=h4#m>H$-|ut-!z@fPDN*(t7}oDmJUs`pWXg=yI} ztR+>SF_?k3(|$8~8#}41GRA)#K;0KrA+FFEnXJOcT@`V@kI)`h*vt1(Uhb-FBa@N) z>V8)xIUsO`5%WjlhTSH0ek)N$o-ro7&>>z^NU8i|V|ajO1KkrC8ZtTw)<8btZ8T4{VMHgMH$;EFwNd?)CRsm4RN}R9iug~rnI>_xm6-QON>iTsh zjnPU;_Gf&r%BGuwfoDW{UtQ-~IYYea4RQt4YxH>3>pZyBnwV=9AwTtcCpa8dZ+E?! zCSEm=D^=Z|uJ>1ljsyM&hTmC=pk_& zp6BjZG)Gbw5s)yWIkUENes`1o&sG)(%HyW>|WytT+xaE!Zy6?32MFroi2B0`vyUKQHk*@W*2 zh^oGRn(GeE>Sl-aJ2zv5$8}SdRI7Vj;Wo|1l(DV{p^uiE;KQU@sQVANe4DtfkWp)@ zW_U!^R*pBmd0j>MJC8BGS3RQq&R?d9AHJXFx;C%lw!*&t#^2%$w-rVlH8s}w1~Q(M8-j>=GoFU(w=u>^-pcHk3UxOHx33fxzi5^5 zKQTm9==+l<{1DTv$W88Z{q3maqI%va<0a~)Chr(>o_>vgH5gxN9iSWY$3Ggb-S36-pM{f(;|1y_zU&b>_EAkn*-NqxRvRMDh%CcB7YhRFPxLGH=j z@bdL|iq9}1^}MrKQeX6$^kwG$N~I;!G_nAb?_Ac(_!fwkl$LPt)YWe>GzR_*U``!QXG0@ts^N=7R&`Q(vYUf6LBdMly}(=a5`W zo+c8{4mHWPwW1QM7#kpY9sPSGz9)>THiuk$8YH29+i#M$av`E%5RnhWTl96cA0l!1 zpP*BtUMx4EZPfqbAmP76ObMM2(=D&mH~zPX2O@u8$kcW} z#!9JU5*E^Vl=oNTt)4Dst5>}0gRLeMcL=YE z1iq8KTpx_#GsC{k#(y!-33Xr8G~U4iRTO+N(&W?=WJbZ36UMoi++GB_w=ubuyXX<| zB9}7!Mrpqs<2d&&=Jp}V)qA>0eeo1`!zpf^jVARoub9ufORCy4%k>$-Wu(7QVzLh` z5LLc-r0WGHFx29Grn2isQGvhDG*!Pbr|_GP_}`90CjLFC*N8ST3yRoVMJD(`il~Ns zVnissodrp%bcw0^lB{=x&TKQ`OnSKp{hK`_tMR?oT9p5mLB{vUd* z7&SebndG|O>^?$Nf)1(qfG3>#yq)XZ6iFaCV5lp^?T3QF z<4wH9Qf@!A|9_V5KftCsfBg6>Yb7hmN|KMPBuT!Ktd*54k|bF%znULr=Kh#5cV_O~ znYnZ4&YU~H?%Y9=Br7XfD@l?hNmkNiB}rD2Bw0z4BuTR0=j(O+@i+%*%-nO%`@G+; z_v`(7uQ&b$1hm!jyiXAAv5@s&96~#mo6_6Q@)(|_Wny6ns+P@hJ=aI7)E0u3$i0PO zISTKe?CMKyD2lQ-n8JIzimEN0Yn*Xuq7rw|=R?vbYfZpcM*SyWnZ$Azn%tCrV*X#f zoj`9utfuH&FSvxYDB%M8#v1O?A~lQNBg=Y~b%kV+G$U3ylAc zZ9FBs-hbHZ`nQPh-{k-K4u*~YilJie>nDCRZ8~fcOBe^B>FRkV@#5(4P5y8~wTNHd({;@NiC@F>?_a=ordC8uMa4!@x$OzPBIlN^ zCi24|QPdPN-UePeD4a~?6I5-@Gv1#F;lua4_9k>9B&zhGohH;sZweK|npyv+htWMu z?(%iy>8z9RuiP}|3}?dXe?MokJFF4&!%@jL)B~l_$!U(bt|ky3~^P<}TtBsF>s`9B=|Yd0B(LNY2bIAM~`4-pk8>}@jsKxu{Uli2OzFy~#A=@ZG^ zK&8u$ZCt;nE|ls}?YerkB&(}Vn0QG-RPxn5P3l_me>h0EHxmhHTwG@In8#NU29&CH zAA<%&o@!;{XO@eK&f$H5So3n@d~%$pgzUCmq+FxEc!DXoYo?fTA|I&va)=52>}=vO zVOW&W*@On;hkzrX8$ zj2F@L$8=ZeP-#N`@U13(`C=X~T(ipfpB^V>#YLX3i#!QuP3c5F;fbvO%x%BQRNQ?) z%)Jy6f%m6f#`nABJVwiTv`D`|?(@8SQ1RetGxh#zcFiM`;WRHUl)c{ZlB1lDO77gn zCirlFK6>1r?#dg%Cr^Mdn9g-TV#!g{)Pa!@e2Y#P{|#OE=)3T-(=~&CV3P5j@re2N z99lAb-p2T^ppT&LBWi+*yGOW2Gp&QBe+5l-HCZ~!@eMy$R_cYQfXvXQfUn(Gt7FY2SkCi~yx#cZc0D5?gmzl7NT z0NlHp`2W4DrD_;67l_~0>>ATY;;245+r&q-5LNx-AyYM>l_=jpy3^`Tx@LwE(VZBS zZt|}?&KU8y#0O1t{jsye;aNZl7kI^)%we)jd*`SrA2ylr`ebn?%{7U;7K%#l*lYqN zlutzliG~^fkJhl?3C={a-=e_4TPgICcAA{;FN#VY&E9`%5KsXeq(RAj+qQxPEwj`*+BP4ww5qGBJ+G7fK775sFm zsgF`y90kMY7^k3`RVb)A&LR|q&JQxB8MA2-XVV%+OzEg?w20ei4bQv&%o(LuMO~p3 zDMe^!H&c4YG*Q9H<6Pqi;i!BbKb6^8IZ`ouf~l@ei1ID&ZT#IQi}JndGyXg0(c%$o z{BfykJHcmlXsq%7uAP|sMf|9`xr=Ma4ra&j7ZTIZ^cIm4B$g60SW5m^)9=$vV%;iQ zz*V$)tru|YQqtp{|!f^iUecx8P`bdXLeg17~%SC z1AmTBM_;m)GY)Ka9VBxCO>glsLeA-VE^^T-^N7`a4L^5|tIP`y%A#)PnBJXjaEHMxtxr%`~sPASJpiK0y0{d)NOl3mF*ek+Dlz1^`AkmJ*4lb{p1HKqUNp>obewr zV$~;d$sEog?xZNmOR04(Bw7_X9lZi(U86;dy7E+M6!8x+~4~7n));ZHbx0(v>{#D|yt9o5X8FCGncW4bv-P z65pQTdB?wpxjr2)2{g%a*Wjo$sj`W#nteR)nBUfw;JH_i^>#hOupIf!hN!0JI+%EC zQoU8Dr4n~I_!mxet!ycNL~kUISM?cWLOU6vqx6pBrl^r;S|##~_iYjr)q6~(P0nphpQx!LOeDtEI>IYYu zjMVLtkwOK{6iU0MQncXXGVo}Zt#vu2%OzQr_i~jD=*nZ*4UMJ1P0q#8~j(N$DNA>V1B8I$?- zaH(F#y@0CA#~AWW>O~j_4+$r>QFh|N8!}*Lgi7dWIWZ z{X`MkpPC(sQWQw}H!}W5^jE$({BN?R1JVC&H~u$|^Lx;JR#h$I#=m)lsH)!%F$Quj|a;i0`n<-N4S zM7sA7Rr~E|6InvP4~ZQ+kzl z+Ys6(jvlHLD~*r%zw-YfV0`OhqWpta8Q)nZrqp{UU0=|Mz~7cpks8<4RP{L^<}P0C zY9whrXnJR>N&ItwsHToZ%>Q;Qq8;91nr;?RiIWl6znf`_@hS87Xu7Pw>rXAENtM%< ztJ-we{5dqmXyU)A$LP+fXXv6K|A7uBenlHG*E$RcuI)_o%MGVi^3x)EBSC1@hdUXe z4?39AftjMbZ?iO0y*J;4PBP7k(!cI7xxa5Ks%pi6OLlR_HtrR8&z&_sr!6BFM0T|_ zMF%oPMa~3`=gbCzO=L60`lde);?o;Nh59TuMPE^d8)e_p zp+Nblm97UDNICMmEH=4M9;B~#P@HKyOyaLJJV<_Npb5;GEMWh)1D#x-vbh-2u4j8S zwV8_M$as9GWXxvUmDv;|etei@ep8Q@lKe)@wXu~Xs|}}3>StuTBYZcdx{>!v*hFsJ zFRJ!b%tV$>kjPSJf;4tu*BeAvZ!$3!7^>jOsivM<|El2LBv*pe4Ac;SQqJN2rnEgH zAyhYwFurH^@HFiae~%W%_gY6${y)-S!S~Yy@_+QOqu%w!1sehg3 zXjrP$$m6D|IZ0IFpIc4SH7!IX)=x4`H}fPQ@m*Wj_7q8|19_(DvaRCiq3KWaU154c zs+LiU`dd#|6QNf%n;wl?%s-6$2Z;F~eg%V1b?toP|2soB^&&wkL~o@dgU|XbLym99QkJSk&Oe!*wU5j}P@nc6*^jRBG!6_45 z4^&G~ud;16A~&=41GPV}<_D2wr%Yp~Eux}p zN1NE!ZAAsYi<|n#ibNHRnd@pgB?YMYk@evS{lbhZN;7#{GNa7@esR#0j$X?^VXai& zlIOacGpeV%d`r%V^559Q_|_9*hkr0HAo$LOT<;SvR9|*C{wt4&d0?;jQFU8S)6{&7 zr^h)a33@rI>6%$4vHmcR50ekQyPL#!3wV66oxiINoHI==CW;x-OPW+gE0aGyC@S8j zrK@uXiNpVQ!nW$gnI_tkF219OTi2P;uJ)oz?_|aj!D(qO28=;eJifztw~`}{imHVs zwYJZD)v0B_?m6Zw#t4itU1 z%GC7O%S&djgr#KI|&VY8L?lq#kZzvQEvS z7t6*I!;hG}SNHN*?v+UIsHy#7DUT%sl;>im@!A|w(X}KNBKGwP6Fk*LRQ>Fhrr&jeqbt9y5mKKeux293npTC4UG0c4e;d zKJg=-$GS09K*~0%Zd>ab#S08g@A95`H$wfFWd}`Dr>>$BuLn(2@6|kht0i%&kL$g# zB-Ce2PNAs5WT*t?c)Kfc5 z*-wOK5gxtGO;r7S_Krj7!faET#b5;)p~JkBQF`wR zQ`v`%cQxEqdNuK3Rmw+?>X|)_Zz-)K{5@$A;d?#B`2Um;<@=dX{m=8B+W5(3e{ib$ z(PXMWGjF3tw>I(oYEezw7MjF!(?m6OT453!7z?85mSHAwYCUZMcC>aK>?{d1{U+$T zYqT_}2(NBcN4TzzPDaxLzJQuek5(}ZGK-JWlRYZ=56v`9&(WA5-sXbqItGgHFQOBn zR?Rcfo{Plv-9THhft!;67D@;0Gv0T)iFv;Z8(TQU_s7;7FHLrHAYIT`w`%tNZ z_m?!|yK0~)@4mA3C4*Cor;>$hxgK&;d1%_Y8u@) zb@_PLG@gAFKSxPkJ(T2aGX+Pe&yGl7p9%KJ6BYU9h>8DUyeKEy*(9)w*}+t!lRa;Bu*FyGakos!fI6dB~eZ#uiW&6X6Te!szZlBS7C zp|-b5I^#;N77y~?qS`TP&+jymRpfuFfu!u9u{$9;L^t*^u~TP6mG2&5Vw34)#3nD5 zh9BD+|BPdz8W|L*=x6OsPB0{Q1 zUWhr)8TvBFM)9X?m29ZN^ywNYS;=;p$gP=e%7=~-m9u%Ti&_miD8H9=Ac!8CYr)6|mjyt-?z$)9*Y zRQz{g*L86kr?~i^q06OS>SCfd5t>!E5luzN*-gWb(mzf%-gg*4pu*{Fa<2)9s(QJr zYkM<|Q8NwE8RNTZ2aVAV@%*&hc$*lmBeI)Ifue)wO=#vcF)U&Tp>%SRaVka(7u7hL zm24M+%yQl9cBT znebDiMU{I8yF4qT+(VJ6a!)T)x{Ve}ZRlhg0*ghJmvwg)tdVlWt~_L%i+e;hrP4V? z&Ji9+pZ9Z9@8^bQ^)y1iwlSqyWIrSH<# zLuH>ME(R2ps{d}+y_48J3;ohvq{~(!^bskvC>H>Rcu&@djfDH1$a_iPLd0?^9$Z@qTYfd`=hzO~2&}sG%NLWF?)2m6AWH zpNapDVsWYqNhk0xp6gmYTKsU1)Vekf5(lA2i4CL9OXY0jt~hHd9NwDhc9M)LZbu@? zM0Q`~vB6m)kSO|mv8nCYSyb*59@DUXo)|Kk8c;D}qw78bPAJJAX$pT}5<{I}{hvyn zV=9&`6XkO%+KCUbl!GRhmFp_!+%_|9=z3A*_fIl8GfZ{5s?K{_7LvZ{OEcENRJi){;gkZc6{ShlXhnt=A&g zGbd=#PVh0Z&;*I)jQP-XZL>*yzlRnRpK}kOsU?w41e3nsCZ(l zX}C}==2w>6!awt%>+wx&LPaC>BFTuT-ZIc+pJy4C`gye}zM_vPr<(adBs_FfkwWlF z1)k3_8Sh6WV}}#s&;q9-Ye zpe_h}?Q=|HBiptk_kk9swyLG5x)Pr$n!1urW;vA4nD3e%mvZ&!K-bJ36rJlqg}P&| zk4c$Of3J02M~GE*x?p0xeC&9M-iuA{*gh1g!~MfucTAOBWZyj41V?odM-S1_Vbi!~ zftXjiNF!?dE^*yPF9xCSW2SWSeqJ8L?9bI2|Eq^Z<*rU~tsypq+95qn-NWn+f$D2{ zl_Pi87E|;!N#-1+$is9fvU{y_ts^T9jUTo%6<7BclYc-eP`YTW@%@R`%(UgqoX)z0 zsl0z9JDg(NaFf!huc)Mcm)y2Wl2BI0BBQdhWfDocV2X>V)1v;@%cPa<5S2n2j%xyE z0?JqRFuBeAq$t0PDHcR{zExdpo+)}_zNp5Vqb9nAUJznGEi-A(a|b02DWm(iMlEOS zwB-_;l5nN&lNib`BRY+==O&xXxiX=l-E9Xq; z*Lq$^^-?<3!z3ez(3jgx>6k^LDsN>A9CeSYv;zraD9<3*AGwdNHcrDlQHg0Z-$=>i z5kp|jP?J(kzfn2#^;K+~No&Oqf~<3g96d;READu+mNPD&V8Roa-$&jDbTAPa!A*y{ z-?lf6w{;K|-PYH{E<{C@{C0w=|L1T~1y8Xk5w*XWXhIi>lA<)5MaHGsghq}qjfT?u z=9tR9DQqH!5w6gGx{4|tl4q(PKPbxgTubA>d4MS2#_`5KG%Ct>VY=(XX7Q=7h8cec zUS7(1=#2Q0pTtNP&c@XyC*EDmdkij6%xhK^&0B9u8>fmY=v-@ZuJ?&~dw}G?nZcTW zBuePOBE{)%0vj?#Wj(*oI2pf?{&1e{vVT6pnLq5h3hdt(;(svfIisZ8B?O#G5L{}~ zi1VrP-*O2NevplZkw-XAMegZu>VCuSsA#;kw<&3HLBJ-%OHP{5uk=h&I+a{)gpQ0b zrT2B_l62;VJm|WIGfF!gbCpeyQdB=a&iIyU2>3yOXNUR_U2~F2Apg>|H0cJGaT4WMG zEMzlL>>T0xqNOCz)GFQe=NL(bdZ^sws^?Xyo}T2IF@)_>@c0qevlrMr^aA(EVAJ$` zYflO?HO@DJxe4+y*$Q5dy&SW`VBFmJ&Q$^{^=yoKL>9!)81+)*~q9`yV&*W zVD@{&d*o=s`zsL-_^zI1yoUyhijSi^2JbhEO<~GvQ3W5bHIY5tL=_z(GYW-gMw*(Q zBpGm!(5xg==N~NQ>b-2UNNU{;%w!{27*?N)Kj%q^=fGQ-j zOq<|n}Nx={a-bgGSMK7|~CyLt;wNzKEGSOjeM3t74I)&U- z15M(|6QbfhI+^Uf3q?6iwMC*bemEr=rwKGVr^!nEAxE;V8zEVp zn!t5QJ~1Bm>HaZdNQZylRZ=ADj_+WP_>v%>+@AtZ^nhkH!Uc%|yji zTCYp!+ox@mSoc~}{nwqM3KnlNg{$_8if1$1fr2H>dZO^<)^J)&@W3EbAKgIyH5-Nf z5_g?HCWWYakWK|^Z=o{DH-(W3%J1D_5|8tGMUywvB<7HogQ*WMGUWl@n3$S0#Q0O` z%ELE_em?wZLyeEAI#oDlmdXEu=U)%ica1gW?^2ltl@o@V+}-)g=Pb$k#Wztc4KVT6Qe^8^z+&nJnzPJ2vti-DqY0(?C^M20Um zISoWPk#Y5G$@sRLWSnG)<+pPs<2#XzQ?2z*aA2OxS(Fsw@c?qF#=n&Ua{iP7q6Pryudnk?1P${}_-1S3>6e*{4 zkrcuI712p`yr;?QaYR)0g0xFmrM}>pWOtu!f?;C+YUONG|G*+q4%tg8(T$r8N%s#k zfd@v5O1g#`km_1)bT~=Zp5+(lwB-_pNDP%yoxvu2Iq9|V-I{LdJ|Ucf*tFHAVqcl4 z+?xnit9}Pe$wwPRRc$-hy%($+WiU`QB=Ih zS@jRH;ZQ%4dano<%{B%9S|Td6fWj4MxSj31QF$GC{_0=cD|+xA%`v_kPKt7Fqvb;4 z_a{wK=lP-n!^wm~`m3EJeO)_AC$}U0RhrpH2Vti;C~(u|c%_xQVUcO^G}q2A42J=)2416e+T*3Z!}ZOHi{}Q(||VXgl->X{7z0g@xzzF zN3Svo9wGaxv8L|231Zf7k~;M|`Jn1Gddg-UXLd9{%)E|zaE+-RLaZ0@XLC&TU0Zm? zZ;^`QIVLAET$B@D#0`VUwj|fLizI^FD;eXft~_dpFxTrM!m$D0b};#0Oc1kftmLa# z3D=_VF}CSJ@dK3SK;1UBVnFc&L{?DuE}zi5^#6QW2TcCI!(s@h=BqO#1gn>4yS_gz z`Rb({Q}^$LDE~2fJL>pGll_Md;$ph(53~pUTbh!J)}s6e*SJ0(A^y)D4u__@J}0`3 z=oxap;Jb;iDJowXV?4}yDQ|siGwoLvCL*{l#neyX=0fg0#E4P&Q41658{pmw&?%*t zr9$Z@Tug_?;SgFhz{E#UlLevPWGt&&x|qi8Ges3%wZxQ^%@x(SjcFUiGPbySax=m^ zgCsIEzDEQN&af>eanlmYc+&Qlt~7zk$5~{+A^krT0sMH6r0?AaYVdqaq1nGtYHb0d zoIk8INtL`vRD_p^s@P>xpX??o+^L80wBIHwuWE>yn$=oVdC^3Zd+T&jz9bTslFo7c zlV}0qPh0DHWQh3TOAZedh9$sn=hQ>NY!tsrd=v6cNy z-epro#R5dxQSnXK)FmI}5q3DF@SaEPhJdNt&!dG{`dHKW29wBW@X~oe?fi68cilc7 zO$MDyTA0F_&0@BdNg+bltTUy{#)vAML!JOi*0(TuJz7bg!@+-~*;G&INJ$+`PI85K z|D)QMP{3)e^Uq!RT<$y`zYjho!}j*8iyBf09unXXC9 zilg#hTTT9!)neWz$t?eEO69C??b^cguHG5$+ILa%)%NYKbA2RVZD&46ZQOCm0M2-w zzo#~{pg^rV;QEm|;%dz%*PG`hU!5WTn|}stdb-~9@E>qG=z8fSjSb!)Lk-amJ51~* z`hoDySZf;Ji}R?(rLxlrJEz#)gV3GjN-8)R8*D6s- z5xQdtB#kgRZRN?D~Q!8N=iH1-@))qGwNXQ=XLA z9s7;{*mj!b?c$+3r_v8lT=Y{4)g4$YnG0D(`QN#UA`?gX?vVQqgH4o=Ni%hO+mbTT zmZ9__*98U`hDt{ldNQNYljf1@w}@%kULHYK#Y~fQ zkx`NQb(!m8SAO4BQeX1W!{$(Ubr(~cQY)%%PTUmjAl{3>hv!V~$o8U&28K-CptF3# zXC-acER$7nj(_l+WZbwyGI~-6a3dLQJ(ozvP3&;8al2GJ)YA9^9x;Wij_`Bv7jaFI zU)svVg1ku3`08epA3ZH9dhbRPIZTK~eMxu*(LXbXq&}}Ug-zo{d6q6Rg^jF=G2Ca3 zNDv=HNeM-!IY{yCaaVuBZOF}EYNmdiDP}KQt|IpzuIghKL>0bGlMBytLruZuvqc5z zYN<#%gImW*AAStN+6 z;(I%of=zuzm8{)t3NP^dt5&;A;D7a^vhL%?L-8v9U(}t8xkyT{LsnXmDSj#;%BlOF z4kWVj7P`h#(^oC)V~XdU7ghItZ<95DznCchT|L1j0w|u#QccvI7Y2ctMed22#{R;8BUHME{EAL_Qgw&x6CO&MTsN}v=UAMA`6yev; znZkZSQIXW4mu%y_jr_k+d&JzxPUlG7xXUE-wow zM&D^TCY3dGBv6wYH`)E>i@EK9WTRmZ#lujQ&!SW1KWdzlEk$`4vY8ta;<>@$P`AY7 z9VC-YeKx{%V7cU>Y8R`R)DCh&kv(mi@qQN+HTB*l#{1ueqT(YNxFSD1(Zv6>N>py& z4zB)us;C&)n9E$AQx|oKK=!~K&k9>XQpJ<$K z$BJs$J;3#0R2tx^qbe5iKBH~`rrz7uRNsG=3<(bLAq*1X{em@I2yfhKJn>~>8gs;h z#&1`-P8^d)c(1NDCA)WvYJBUE$?qhhD(+ZnJW*OvwVX?=o?qyCfg+Qh7y624)i~G6 zjp9LN0Rd!qg5-OuoFvx^bSBh`wXWqm`GQz6)l^PnskPz_r}9p4KR<#0JzsMo;RCPR6PHe5ojJUQ6RiEEm(1DIR3s+1*4t z@@`k1R=chlBT;03%8EENydszEP<^~OG8-e@n?@C_#O3FYf{x?YP)IVz{~ z)2kWFFKNTs;m|~bVki{Wgqb5;b%at-zVw3eesoIAR}8P=oL^a|t z)t)n6in(4U3sS8f>w1|_My*YEy-Hd&8n&%z>oKl9k`5%9)a6N{a<1glL}1@sXKK$u*TL43joc(+ z!btNkzoa|o?#v@ia~(V*Nl2T)+z_(2kff@dEtC1hWJwy%PowT$Ytkx)iOSx%!SxQ` z2$FX4cTu*Kjp&f`7xF}q%}7b*d?hCPKV-zIS3_pX+nvSL%(+>zH=i(0{Oj~*43yYraw{b9Q(Z}~u18DB_+c?!@# z8nn;ZQKxl}Cp|`7e2kmx|iVzI|%bFyrk*rUM#g z4>UPn?-3RA6LdmN9u*9c`|)H``8z`H$bWH}i??XL`l^<$9Ealkb(eJIjJ)wKKRsI% z#+k20$s4sMXUAkw*+)COmZnR#`e%Dn{0~B`<``#k2RD-=iiVGeT*4>%@lnZtl-Qsi zD&Hz{eKkue)zKZ7&^jKafaGV4)eTE0KWi&#&vY@=lob~@=?1*E&Gq_7$yUvaT<;v= z=Eb%)u6HL%wpw4$CKK!HCHoC-4)x|KllouEte~OklxsS>Tp+u;rD^zQ4^goWOI%kU zmKZ!&oHNB_(5kvq1hbI!)Nxas7%Hmn3*M~A8s*TKjM`5>o**&mjt?-!kCln4`+BL# zD%mV%H2r@y%43QX`}l&4cn&jcN7m@=rno62s_x5fChNZQ49m_l7VKi`zTC>6ZPWR-R@#ZR(w5q004Gg(jUWSocD44qIs zf32xIeVA|Huw*?u+Y~>|%opl@9AvUyjEZ@h{ywUQ@isJVIJa@6^7&n^74-Q~wO3s0 zNkl^QTAyirtfi=$&eV25?$gb#h2td``GpBn=@W5n=gbsduRbO>ccQrVbKWnWt&`zQ zX6}w>5qaOtHE~8n%GZ6aiFfshxjrCqRFqO;!N#P=t_3US|rt!$a$@_LUH_L8m_|K6`x^V6y`Q=<=#6o9G zem7>hRcD?SH05ooVJUDp)V$kl3NL4oD2j%YDv7$`<4na?HkU>u zyw23V*iw}DPpeEr*&b28Waf|Ibm?vqLU|@kd2XQz+)OMPp3oeVK9TwV^uLak^og4! zlgA^I)Vrhs)vi0*Ns_vK^(8$x_mI^35hmP*3>d_B@Ms~LUu$B2kBiC+j5Q_y*H2WC zPgm97OEet?{YYHySL;ZDx2vi7NJLc}U@9GvdRDNZ_Fv=$!h1K@4bJTsO`ny5>E}5zu zO~L^pquRS@nj^0{4X|kf# zf@vo6vJ}Z|kuI5+?UAhR^rpJcmhxvdxSk_Z9yK0UvUA-jNjB-6X<*hxO!$^|qVk^F zY9g2Ch^pOp&cuH_C@T5{pAus4?lmR1#Y6=^JZ9>Hd7=u)piwnn?lfNdoXTsRV*kV zJzF^`lv70F9#XTB{3q%_B2dYurSR;h1ynyD2l-za1A9rvor5?plgzgVVVz`*X6o!- zYA}puSJU@LVyh&TuXlxKNs=n>Wm4xZ6BWK@uE~p1As-dTkDJ=f$e_KTbKPE{L_2Dk2;LqHQDzZ(H|9^C) z@s8&ag7Yc8QkA^ZB!=%7l{}DASqN0@H=dt6as4_;#$P5$#z<;@|7EvizDMH9dpjj1 zeEt&3bcB79)^el?PYAG{C?I+7A2g8>&Nvnn@tSSP_zjJH119?JEK#vv4w#aWRH{@h zH<0~1Q0c$@HEjVdni;sy4zCif~)Q=;( z8YMTJGZlyCimKg0-hmz>@j1qO50go72GKAe@qc2HMi+?++<(k?{@zYh$^aH082xoS zNj<|n5yJNsnY_1$i)y@)L?lEv#ZBx79(9xqYsdWWuyztWf8NwD;ORh>$x!C=9LRZOBx-J4aOQD(btydl&ZroM&oX z*KZUDi54C+<<$kE0=JOH>2UBw_n7o4lO#PUP12|AlFUqs#bvINBnGC&2}%-D=dsQY z;ZDm<7kNV`5rsO6DsHiwWNF9-x zn@sJtHT-mI#5=m)IE&kfxrbejkf2AUl4|>!K#DU`0x2WKv-+TmIa?3XKVKo~hsbU{ z)KfASd2mRQo+fWYEtqLipJt*G;p+~XyxN$k_!k>Yw0fzi*qS60q_3b#dJQ!d-}hzy zk3;Rhw;S)hq~gLEk!KROjALt5+VH3Mn?Ndyhu~R9B^0E8t-GR*<4pJc*(H*>q`OQT zw8Qm(3uPKg7o0QY>v}O8LfwF?80M??n~YP@qo=4aBO7ys?ijL3E?0TyxirYGAlQh! z^V3c3?-q!8hBFFdBr>R)jwbhHCuY(*NzwHbp)lt-(*Q9apbD!9@mKBR`QN|Lgobq% zb2p2OQPJwODR_oOWGGy@(FAWw4U?RmKXCt3k3Zz`dB4H(qP3j5iJfrbB631276DImPi%k*x_Nc8m{vR(V*cB19T{TCTBYEzl(&0YL|cw>iaGm{aHho1fH%;&tmeKS(kL;+(}aJWOWR(@2)k@m2^zd_yeIFJaU0yJNe%#|I@Rk{DnQD z8n!MqvERfU;UK;Tsqv>KEHsTCa<`P1GRQ^-WTn=+3=fX+jxy~c1^bC2OW-#Z$Qc1>wsbv;R zJ+MaR^Zi-LL*--qBjzw?meRjY z3bxw7l6qwKO_=HplSJhl-*57#PZc%gsm+)4x=`X7M%n_3}F-cU#=FTQk-da@c zim@h6)2gC>U1nnSyG51!zQ_b;5PCs<-!rD*#{FVa$4CKc-gWwN=quho<`}2bG*OMe z(qqAt$B&u-y%*&vBvAqBqjyRAy@x=Db8;BxWXjxH*Ax6?NcAi?y+kjyDmyPtAKoGH_%i)p$bQ;?cNde`A5PG?~X>PbjaB^?eK@1UikoNE|aUvt!v z#tZdk%8bFH0zJ}=Cu5SR^ikvaxEZaC+Af(7*W#i~d9k-^Ibb6RnnO;CA@c?HBL7^Y9xNUz)X4P zFy9EB&)d$E|IfiweZizp9W3eDV1@cxU zOymZK(a#NdcBZN26|5TD4KUG_F;THE2Akk<8Whw|A8Sem5|n~>;&kKWuV+e?9`Zy! zZX_>1Vgj>Ii;CrSG#NA3OU9!+SpWU#5Xtfm^j`d{V)5FSx$8aorTM08zO6FYu{OLBzEbgTXWC<>gh zK`Br()|r~07I1AC<@O!vTE37=vruY(9A~^qGetF2kf4I8!@HP5X)nq*Zm)4dBq$+~ zI?W^>BD{mZ)BB8fzzR`L#_~0i@%$$A=Q^E~%%7)8@|*Q0ZO;->j|@9)lI|HJW;h{t zq{ey6A$(;^lgDak75`wgi55&EATfzx#5faNF;Z0h{p|gSl5TtH|92xb>hq|H#5EYv zN^0NY1q1IrTpBoc5_m@9dKM%i>7LUjFm}2q&q78-NMAKy(qCGPj*{8L;=`uhk`y4T zMineKsgIu!75@E2FpABqoMhtrc#|PoMur<=&u=urwF^YmKg{40B{zCZ#n)p*MP_s~ zwat9f@Q!3U4$hw`<$^@dnI@^Qo2bCU3FG<40`WK;(sxaj^beV_*mX!UpV}sw^G8e4 zUPh_vKjZ@;^*J%&?n6c8&7|Lm_;IFS5RG3nu?>4gRa`i1B2P@9Ii4W3yV6X_t;GHj zY~E&^dM_;*3I?<9iYo48Y7U$iy9Jw#wvfChxh#nMc8{t3_=u?Z znYJeSIGqi|n%kQa`gbb0Yq+T|+9Il8$Z1#ERw+QuVR8rHB^suR=QtBNkojpY&TKB&nXOT2xey4J8P7iYfXKKlBpLm18yksj&I9lLUkKwMcN%53kUXTH>rV>^ zKrbLFUT?zve4_Fe5r}j+M6P5xG-?m>o=5yVA$UaR&o{9hyf{$OpG7DLelpS2SL`J+ zzL%)?N>}B1BII1QuMQgT1TGz%1N09SZGlRR2%BWqhdO!)R30~;^Mu5aaqnr#xUZFD zj0s8RPNLsCnoD4e!;r{-iL^S!%635gv6*dCVBjPQGr-% z<84bcMg1<_WK3e{{cxFNOgb)^d*({!f7(m(s}A+uUsde$gwz96EkJnK2$Q#l2qq#u zMw{C2=+&U{>J$@wi8wK0M`+;?{C0$?f3&Ztl0ObJ1*5x*XoM^$pKN+QBJy2S5K zv8d`gcQJr-&h-{_7|!vDTh^=6se8omeUz*k`cD?4lDV9X;E%Ia;Z4Ws**s3q=0R0B zb|W2|G}Ax3)Ak$wM)ge#RrwfG{u_g)kg93LaBF0FHYuxN6Fr`rq%p6xa{4xjk=t}Z zWi8mxIKTap`6rrhjQyQd%DG;W@-4lf=NQyNO((T8!3K@A2^m~5RfCyi+$^4F9uK&0 zJ)@lUv|^)l#$x3=d`66hL6rMYd7y&|-Y6BL@Ydz3_EqYKC>%dq<;=Vx>bFDb868Tm zXcv{&{)QNV@igh0MGetTMmeJv)VAGHj+!<*RF;?P0BVohtQX3~Xe>IdoFTUuxjV@z z(Xc2+rToGHDJL*pQhP>$oUk3kJ>c3p-yr{QyGoTtUl+r-gqSUqx884CN`({EN68^k zf5}$4XuBA}y~O^Z;FD-oo3}xX!U0^Sk@Xa@pRk^7uNp@(GX`e0`vTS%lABKtHZuS0 zS1B>fdeWcSPh!XJeAk5moXXRX6ya>7~kco)x2f?qyZ|+6ZdN zBd8%eRpm2Ns3ntER2Qj2tK&?n#WSfYbLB!UH6SCWPn^w3xe!(RC>J8@k+aIWn>+#y z*F`xRu8EO*Uz5u8w-O_H>`_S`XG{~%%*E86BP8*Ya@(Qv%>Ti{wLVIf_8cgN?^nB2 z*|j5Ll+*KJRDVLV3+lgFrz-0XiV=KwjVkzXgBZ1$v8phZ91uCfX>Kv{E~u)%9T6jI z(r#`tG-EdOQGq1DPq>f?(n zQl&k&^JTVEN^+~RpBOWa^2HoisQ!fG=@W~C>D)L~Sx=xLf;&d5f_)66p};oD0m0~-1e+kwjW$N>@j?z}3v-b;+y7422w zn89L{kLYCE(pSn+{qsd-WhHGE!wODQjaf7jz&U~m$B_Fv=QOegCfWwMB?~D>T1(2O zl!T51CG|EsD%+2eS05KxRo0T)G{%B8*wh3VEfHBal#$J&&VcQy(yX$3Y0!e=&=`#iI1l0_EF83kb^ZrRUrD-EmcYj-LSyoMJ}h z#^oybj}c-NoL#MI8@c|Ya45~K$a-dvvV2j*c}7X&Gvm~()koQoqmsMu1Z7MXS<%yN z_ZLeRQW}OxN+a2A!#44p>4>G`eB7g4S7=T{=~Hc#??c*$QU2%#RsBnAF&g?ZMi7;| zXQ<%!y~QZ_nG!N;R}#Xtav=5pxM?b9`eIRwyGRbIe!i~qZeuVx0^_*5A!^1k&KFrU zs~UA>Or-#;%BdP>Z{X};7Tw1$sN78lI6G+2DvNDF`(hc&Z-DxL%ID-{N6E=PCnvjo zqoj6-<`%ld_!>`fwL@Z88V?LQ6IFM5vW>2tl*^*-fYP=-l+V{FM*V*JgHbs~TDg`qLRbbB}x8m8%bV9O?Uoe@WOXGwpc;R73}vTRO!9T#qc!{sEGPA165@; zxgvtw_NjvRw~JBhrR;#he#t6lSO-x#9N?%r#sO}zDEppoi}FRZ^`ZLXO)6_rYf4A0 zX@X@4o)PU=`G46WhBa}ZY8*&o1roQ-P`RnQ#mL;zTIJ0t6(jklE0TQO$Q93Pew?QK z*YmWf`-tx~da@F@f_!t7wi~T{44pFS|4igND(6u6K=5T-!7CIzP&ySh=cbqd{rA z1Ip*;1~aJth=wOr`e@Jo0+b&`xuUII_E7ybU zx@r`5OX7fDwg)(Ujo2&7Rb3!P!-{cKZdv5DEmwgjs1%|mK1yYczRu}(UFu3bYW7s7 z>Vh?x>=uppG^xY~2Z)h7o`_f^ukI|#zwb>-|G?Ki+Zq0b>ud53%sSK7p#6Vr2jzR0 zEE5e~>ES@-Hi}IMep{^yzFQ`- z8|u2EW}T%a9JwoKhFxJbO4dRGhKv{1tBP;ei;=Q%l%%{KN6J<3M;eW;r4tF!Wb58d zGEwov8rxOo2}f0zp~||6y`(&(Xf<19y+chJv*Xy4@LAuC6CV=xCAPRoiVxejSWdcJ ztk&mR#F65b#j0#oy%_aFi35dm>=!Kvw;qf5Q_6Lfnh{Eb9#Z7h6Q%>Jpyx4BeQ1|M z*-ApHjOSJ<_xdlyC=td9W7gd?M8VaxRh9mY)=cDnM@<@m(I9Wq0hu;jHD!N458v^ z45h=+cwmEV05xP|&??*Dp{y9g_S%L!#b*q;YjrmtcGydBwe&Fs# z@IBJa7Q0-0#-I+i2QzsC9&0iDBp-msuG${pb;f{wwo$9aXFRgr_9)G>iq|}f5v6MW z59F$5G5=bd79mpn7_?nI#a5mY-@rIQJlG@5V#WWsCNM>q}WXf#wQh0&k8P|ddLp(^Wws{j| zo{`4<@9H!u0V+edG$Zfb-m2`rbzf{QJ}Tjo?_CF z4l3gsqu@~z<~&7WF$ECSm$Wa#v5qMBya8h5{ppf&Eg4Dx`cO&ynGPm+Q$xzNnW7r9 zE0b;WR!cT!y~vmoxIW9JKY+!o7u~9+^CeOD)JhE;2l^^kfVO^kb17mO6->uujObwV zd&G<2ZIf){A|!~6=MLBs$|VD7eHhXO?}sOC`xaQ@-M4^Q3n#10zTE8=b-Ne~jyZo_ zW20Am4*ZYwRe=HR#i$z|rK;955Y2d%N+zlo`BiOe5u^HEDkaD`*IAV;-77}*i`EVn zJH%T$PL&=LF&dW!RN6+uu8=>aUZovlBqY*LE@%-+%CPIdZf((x6#qqzr`D0K6UUT} zs`&BNVz|?}Yl2~=r}Ia;IG$RiibpLJ!<|N3u*xLO6h~J=^VCSvk>Z}RQ8|XT5k&^$ zfa@t5Cs91|gvyx3#0E&8aKg5kjW;GTb26;-%_n()JbTPim9>>ZC(=Gjw0%YFC(;SU zHtIKwR3%F(p22%_qRQyMON_E@%xnX9;v(g|NZtT6Kk8@UG zZWBW@5g5cz1pmnb%PgegIr4Fob!}A7GtaV`bwQpt)^hVOgN-xh%;feesOT0@bMm=S z0Ro*bt5nwlF%qAdWShQM5*2X()A7t_s%W=0Q;K$@%|%r=`n;$P3#AUOP&bw8Vf;Q4 zE4Qnn-KTlqX{J=Xp;G5GiQyo6$|%~!w97`D>B^Nr1NVFAAk`~-*_g(q8fmxtROvrx4TJZe^KGY? z^T{~5y+tQd%75N}B#8PlUA)E#zwOjs-mq7a=rl5%+OQXu)rNToO2czJ;BuTz*oi4iybX~yY)miVtf4O7*lM~YFig1LTBwfcan@r)Cr z+TvzZaKFaHVyJnI(elWTV%7tc&0Mc?-lU5aWe;=DDC9GpzZ$~^sSBhRr0CaIVX;_J zqym8jV)(y5rwVD^H1g(fjYrN(nq-i-kzjO``i`mRles~?k=|LQzS>2Mw43^>)DV-{ zA>jv#^l%NM_X~Ob+|2*SqG%^~zALN5~XT}5}<(8;X{=pl>sEG8z~29 zQfHNWm>LZNL#W1~@IZnJ9AFeA^6xHJse71s0(q16(K^l|FQ!PP#^rK!V);nrp#9%) zO&y{fj}u%B*YtGdr2c0cOgdOxVZY z_jC@PQNcTE#Ynr8$^r_;5Zh(Ml9wBi48cKu|3$W#`I2vRPgJQ4I5C_Z=G$(+CQi66 zM5^3R3FAPKTvj=4ERW>0VNl`gTUFo?yAJtXse+@d3qz$)GxVVH1}C$jli9ddDsQSs z)cA{%XFS|i<@cuyX!N5=&gjOJE=Z-)X(SGAvRQ+p`6HU_@-tQX9+63C_?D@1P+eB8 zQr#lPEZL+o`-Q|vsv6p&iL{AH#kZ@{ERPsvQwhsNbtye8XgGIGrIybY!g6cN@2GN*6o}#LcR|e(>V8Q4Ws!1inIgvAt;s6?)6-(q-g-$Dt~keJ70fL?miEMW z`hjQm7SHV=ZpU#$QtxN3__d=XdCe9}JT?5&93jcug5p`o(3`(AZu{@_?X9Huaxn3~ zgLaE&>QYJhnn;JQnL49WB~9zQCFy4_t3R{Sc!uf>BxrRI2J+e|1RYLgJsdyDcixcX zyAMio=P8o%{!U5Rvm3)C_2y;Vkhr6y{DJac%1)x+c5-Un#AxMK(QMf^29Fc7TN}mH zsYEVC_Ylt?*-I~6YLQHuEUr&EGvM1uhc&D#rOJJ2iWo@`_Of+4FG+CpqKIbnyrNv= z&(UVgqNct{1!#{mo_DWPf!E0Y@%$O?`-GbM809S?567Hz=8V8>53^#y{S`eSNa90O z+XP9%+|3tTa0%WlQbERL%)QnqmRU4>#V`w`{eyu9#tDjBNZ&O{CH~Tl-<*=rzjmnS zzveP*ByqPZq%h_u`BtumZyr^d@6bAexpXwDx43H>vVXNum1j*6BdwO-pM|8=F}oGK z4{-58>f#Hwxm?FFYcByvipGb%_+YnkbM;dzmWo?-B*n`MYzrxB8!s^FBvMwak%TMN z$~TT$@i=RpShv@zhRe*&frKA6tK55*isA4qQog4Ki(y65?23jf2b9A*OpM&_t<|K{{wT2SS)gnTvGX6it`09eJ7Rb$d3F=k!n zTO)VX66Ng7AX50=qpbi|1#LoT^wM4kXBWx}$bH4BoVU|H1m7;&5fHqCC@Ni)3xPn? zdQvAT=N*jaMDE%I<=R5DE2>MARqdxkn2?6w{ms#mvSkJ-r`>hV@t?=9*_`UX*cmacT;G_m6-WH`0@oR%$QK1ahdGOjIBWuAC3GM^^m9{%A} zXe}0wnt0`#&X`_UooGBn!%yYPQAfN!a_?)ae4o=!1nZ?9sw(0Z(B5lV_Cg^g=Nz@0z9>K8_S4_yBGFs2dhi zbCQ{=AJ#+Ud}!=KmkSaH4Nk zn|DxIanl)eI-LQhLsa6tcrkJlc|9Cn4mS9nA~pfrablXUZI-n}=V3;lD z$8#4g#eGBKIiTNe-J+P(IHg>F<4i*7;{>$9XT3$EBFgWh7X;N8h|NRM%5|!4=q@p= zT;hGu_}o%8tBFhnxl5=YBJoRhyP^vAB~H=y57%p3RPlyoVwB!@MEMpTV%WwZvC4j- zV-eMVxvuKZ?_|8jPN{69j|ah>>s7)2axrRWUspK=qr|8>(MuI~JugPZon35qB}#>H z2ZP&C5Ibe#qj=(nW~(hrTlHHSbTTKsPx(x zF|zKPpb9V2C5wu7GgMt`8l_M+bBN0Ceu6^h2`V8zmHSzN7}ewGtVCewMO8DrNDQl< zmT)xY6ey>6CiOoSxm(YvS%Dp*@`uVSMNn!!tsEawP(bmC9jf$^crkqI8&&x|kz!Pz ziB=7_5FdofH5{A>9y_cGP7#KQ+Ul7qrje9$&y>& zMWvjfjQ17MtaPoW_}WU!90BFMzxNW)7hLVKTllGj!hKT@<;mO;Ztf)C(3 zD5`wS62d(3PB&H4ik}S){jCcuh8gl*RxirbMYPQOzlwBFcJho6JGQlY3R^N*^~C z^GTVPvb!;@pv47JL{zHM>|`-gDFqvWUrkWyk8ry^BWJlPX+27ey4Dj^#;cpesI~?u zt0sk-jlly(){C1}!@4`eTNGVik8rlg7m`?D&_n} zB4Ia6%K5&MdXJMx*wd0Y>Z)?pGyf9{{%NBcRve~RlK#9pVm@IFU9B3slP@4~6d@PL zee$GA{CWAs_2)yxsQ+(9OQ7;sM^*4Wi@x0VxH{dsOnJY% zEJk`I&85idO56_$KH_Lct$&6pe%mKTPEZm z{km!#enX5z>k9caa&t?SYtwEqQcH&@M@mp^tw>u*$$xKBzR8poP_~_R0#v^eQ1!1} z7Nc^?5*3`cL5w+C+-}pA%e_jB)G=2K&i}<+E{&ItsL~O1 zD8l!8x+?ER6cnnznXMWk=($EE?fgdY@28Y6k}f)Uug9wN;6X96dJvL@g0E>$Ky8Ch z6`wvU#iy;alJnO{Ro$EH6S;S;P}Q-k#mGO#oSmqRpwx@fzwA)ewdD1%=5$nzG%Omk zsJs}tFVrj7=T0$FUtr2TB-8w!{D!fN_|G0!CFS1plG4K`o*iw(Ll1cJg9jve00T%L zWNhFRYQj$u^;#2<6te1+>Qmx5Jz6~fq%LrfFiYd3y~_1v7col5e5QO&OT}pDOmi(N z-`=ExX9HpsT(~TjS=26MY6KLHaH^b%1R)yFJ5|;9qs1uimu_26it0;T>5%1!P<5ru z35d*uEy@Z62rv&wqhq6*b?^ood_!`>91loY8D&Yzs=oZOOguETdoB@Z){pBqT;H`- zX&c;PRQxGQmGr0M0co!eR2gA9nN%y%R#N}SDAn-hbus2YQ)_dU%6yazVJa@8Uo|Wi zkFK+gC95>X#i+E`==m`AcDCKIN77LD_oXUr{RAc*8hJtGS{|*0PmIf5NHiex`B)N7O;(8n;-CKr}ZZ z#N6Nl<#?FM3ymSGTSSva(;Y+2*l;XXf%|FyHw(w$$+kg9#Gw*NY1>brAIG53X#}EU zR54dX!}sHS<#>o3 zbCD!>2ubqoG$eH(l%_q6PVM*d|1g=K#63I}lTRe=l-Ck@omtso)lGHTgD~o z|7NlMGuyi}#cz1J*%H=^-yCi{F@a%Jv*{{umR+*=EJ_INUTg7`gjw zNo<%ABzrasztzSzKO}ym^rEe3kNAzkZMFb=!zh|!t3D}yqpC$svG~;mQaE|7VO834 zr?UYlK5HwoJ~VoraYV&2J1>K?`=93s1GSO=g!GPc61l^7R|f_Oc~sa#SOY zl^N-LsF7K1%i1k|V;;wZQO*Htl(9}&{)+Y-ttdHR%M#vz+Vi&R+5E;xW0xA~du>iW z)Od1|ZCp3@B&H9vJ!Eyn4j8>@+LJ?{?YV9wC0?t!uWeYs7E7$w6f-<)}7( z%YkOBVIzzs+ih#uOU7oeZKcJQtu#33jKu?NFD>BUz$>M;ci0O?xRY{z4S0<} zVl)i9tmgMQEk@BFPO7>FrtyYzFJpg=59k9>3_Se+dl|3-_g!a|WgVy&!~b!vs#{wu zM*f#XvcXNXs^NWUbc;)*$RIwzc$@$OW7Mt|LW;*m*)oRkI>b`OK=piL29XiN9aCbM z|2rd=X?BeVDGnhscvSg&a)zav42qWZbk@`FnCKSuE;yGvP3t2Sm9$58xmgAkSxx zYjK2>Gh+1__57iOVuZ@+PVLzw&a1st?QIES)V#4pRg@8Egobkq)ZA-b==19$*3E}i zS+@?f|FW3f?}*C(C$k|KJ;y0;Q?(e@zj-0t_b*q@4~K}6cGn17FOf7O`)CU)G1=oJ zcAQT-w@AgH;mm#W&lKn!maHxY()ksdBQ zKl_|=ccPL4=Z`c(A;0H#<$Z^KL|Ff(xdr+EJg(f)^aH|qb*t@1Ybb9VO0?p36^QkV z@~o2pyiFYGu>KuX?r1s_k#OWQ<$rIXs1I9<-`H7e`y<~P^XNY`f+gju?$?(@Euk$L zRaX0GsWNV7P9FI81XcCjw9z56kg7BSokY1}2*rRWHWB;z{TXQ1qe(miXe$`7Njwki z!btJ&@1^E-?j^?jliUv+S+m=!oHooa3@i7~^wA)%EWuVvbPKXOnA%F5l!o^!|LbI% z2<$$n{40iu?I0oh_RwAEEcN< z+twFJ$XKNMM?ZhSCSXWCZsfyRqXwwHOWv79etEV*i1zLEbC zzF~WzhlCW(b)gp)vOCgkFYpFqQQsDeNwK6$i$+rXdY$d%C43-W;tLqRIc9rhxrB_h zr)=w}%Bk(7c!l*F;f2)y!fe2@0^4tA@|%KVLam(6H^fWlY>N{mr1q2Ir6OCHy<+^X zgYEaDC8V~HVhvxySX*k_%sP!tRYtZgmd%GkQzw&fDPA%5et?OiP) z<3sj>v5yTfK4fEzef73IJZF5c+_pE0_rdz0GY{ZT(jq{LgPmHif`fRS-_O{%&-VHV z{>R3dwzoS<$at@Pi*izfFJkOYuD5#jn00gA<-LC2j7#oU;z;@*uL#Hw-eAAToU9TAP|Jg;=|1Lp{ zycFUIk@n;ll>b=F?N68t9DUEU$Rs81`)LZ3a6Nod<^Afq82&L^RB3uAF)HTlQQqy0 zjKTaB)KLVn!j-UHr9L*@Vg=LLO12EC zk6u=;S*2`9DO*V>C0vOMRO;gc*suZOcx=CNJzXwF!dDwr>LZ_tY9_wRc*JYl9wDj5 zu*oW6Kh1M+^|3ax*eHc>5flQ~kSi*67+o+(_;a*!^(E>Ng>PL^?t2N(M{3hzmE3lp zB>j{q$(^R-pd@`Cz3l;O3;!wXgASBYX&4PB!Oe=|jlqE{>;++RWaO)BXb!sprVq{dhKRQ9O_Vr0C) z-uAa{l7ZCW>r}$^(_&Z&KOGj^WYWp(-fETc4YB*i*CSQ_`@=ZcxTo67%eYT2`@%3qyd2_ND-jo}**)bf9*iW6nIB-e@TV0W0 zE9(mLxqYFs4lNd=;p`^cHv^;r6>jo#MJ$N>s04E81wo-u-UcmJjc|J03j8Ikms3Rij zmur$NOv@~pl6(_W_qU>pwbddXH~R7z85`FTqi#-TRq?Dv75Q0os#Zn8(PGral&fG? zqZsv`2sQ5>#sI=Ki(L!H(=jTLxL%B!>GPF0hv5~d$he^b(@u$cnrL{GeA7|+tcmo| zqQrkqITD$M88tPFRbW+XF>0t|=?f{<;_?7gj0Xq}^gTX3+Xiqm4$ti7c2JMH2sNBrOH#j0Y)ZZYa=hp3Xr z4~XGANdzPuGq$%NgPFlh3g1ps4ZmSL0rEkfDeR)X?$FuY+t81hj;NKoo4X5d}M9v$; zf3aY^PJ2~Q!Qca9{t#7jErO#yLh`rnP<3@&4dLSoXE>(v0mhVCRr0l;pT^J6(Lv>G z8ZBxwK`JOHJ8r8aAQAK0Syx%mu2)l}d?!1yD?5r~=1$vlK5?Mr{A|_mRVFYTt@eCy>l$_hC8cq{qj+{-0RDo4qECt5AC91CW0>AAA zcHeYWayBGJ!*9}6=D^cpcnc_47=;n4Vs5>tqDxW%$FxPZMEaIda-oB22)7Z#kuXqM zCFig5%@`O$v$>JnZ;K?y#7J@vX1VV{1Jn3j{Lf?kW5x62KGG&hjvXqV$-^Z1{w0ze z&4d$^PD*l5dd+(h13qD}B$E*(N9_^MI3B+*fV1M6NY8q2{_cH&zw0Hr`%pA7{$re9 zlKWKR8c&di_wwK*D_SGT_f7|6z{k(vgI2R~!~v4YB=;ps=6<4OCeeES24NYS!PY)r|KjpB%8SS;H5RdzbTNW7`8edGeEsB;#R7JIJv7h$8C>Hl}1v7d~Q}ec;7o*|R zUCO_MBDV2|DAn*;wHT@IN4KEX^!{ZjzAe$#jxbJSr!Td6w@Nk=PK~gAxmOb4dXScM zv#6LKtFna%2NcmVVFWttRY}t+;~5)gEBB~eF&a+V+&>afVq6Q^XhnA$zZBSh?9B7H zMjNv6Qybe2=6`VCxXeF9IvCf>Z9i`jw{iW7?S`M%`Dsq)QjDZa@lv?ZHv6FoV)%aO zpaOR?m>D%O9+hx$FrgT@P;dM14w8WU-Rog7VNi2s3yRmx$UC75D-Mehn7Yq4Z3fry z8REZ2<0J~_?N{C&J4Ef+DPCm!>8S0abjiTnfBRL&0Sc&?dv39+_}eL|u*_o3HC6vg zFEM;$Z>WZe7sV);%N??ipUDVDRNWu4MN`%@`d(9W|9zehIxoSqM25MSxPuC24`ecO_;&|X?&sBFG<--dh@@*XElK+E5P#rDqT1qV#lHU-W{4*m zefKc;15-2>Z?px{r5>(96seK$6~lFqv}<#Vj-(xV&Z`p6^bo@}m;xtC)0xo7_&i!w zkGEFw4OdC---!7`rgxFbYE94}0;3aJ&?YpRSgs$7mH#UBJ5;UVw8i|+#0eSG&nfGh z)?y_5yPGO&zg&z!N6LRFOJ%?+0@h@j)QzXOl%nRzOjS79BS!681C;-#nKVW*{f4Jr z<-57fHi8dNP`>Zmh*2?*3GB!z#GRF-E2X$X>&AXbIK4`_2A&tgTH#b>9jAy0 z0ja;2U518tCaCHz$HXZ8beO8oJtju_w`XnV&$Hp@rON436$O-bQRi9Kq9bWXI=s$F zgTt%BMJaNSIeR*^y7%Wk5{SL-|n#FBV%02Lq7$rTotGojYC`RBF8Xb`TG~M#Z8^O26 z+*fw0tgIq2=KdI?ToG%;aDT$?hvy-RXoKUik-r&DLC)!Uh`7KRj3F}%NBnV>G;@Tg z%`+qk?qsng1;q{5LxWYqw@y*#Xhed0OoDCnad9Jcdr-L^qVXCD=eM;OO*&fKaZ_w# z4s-nFS%F%9=sJ45= z0r&WEwsCvK4VQ~1IyjukwpnMWrqdXm#p{gB{kEtpOvS|95+}Ra{;@=yaDU*o?cpqf z<(e@<49D2LEvAt2`y_LUsQIKAQlMOSZx9=q%-sXT{VC-+P3V_~1OTrbS=UzHB|OHQqn0T>U2T z6VkYJxYYK^HA#T`(Olbz^WsL*58TY;YO;9lJ1t57CjU?F%7bSKxxa;R-#1f3iQP-V zgTdroJBVj^YtnKWl5U8Hi%HViL`jPy(g6wI(vFX$XE|Ke_Wa30@j``bWq zB58Je+dEu6;h0D@%`%ILl`Uv!nAld5p4)DF^N1uN;fO~iJ-tWNYiv0j9b2oUXGe;9 zW2Pj*b<1{@l-*5KGbLuYS|_R`-wIL95n?5=aI~Xm0!cI=s7-t@9L~>FQUc%3*h0Pl z=Sk*_LDHN^+qOzcf@9oBl{9lJ`3N>2RIbjP2}tsHux;n{aExEa?>~MW-*$-Y%_)3i z4#2jyq!~PJY~pb^|ItGw&1QtV@eV^Vk#P93N_u(}dkC*3E6_r?O- zFAO|J;gQa2&WG`0RQ%9e&7UzrjEa|{Rob8hV)*`Dq^w&Rnv43mL_`@yk*cDI`F~hQ z!v$`qfr{WTHRtV71PYBJN{JEhNQ;V8fov+IXl$re4ho}2UFwP!-AK8ry+xFh(KOoj z))M~5R=%&Tq~Bb z?wD=s0zPPglpNivtfn1o2)2ps9oAu3>)Z1|SQD$V7p9APk-j`wua2_4k|37xHs`Fd zh7Cr-X*wujz1dOCAGKGEw9Tefgk9d3`@|#r1r}&+v=<>Sqh94S(JF@EtRgkSAk%rG z;g8X(Dtokm_Mah49`Nu;Ngc$T-hXea+}#(6kss$%&M%mh3hwv0Fu{3vM2kzL%y9Bt zHF}yb&Q#H>_6C>>r&UI9tovr46Un)jH;WSnE zo==R7FDbyHXU3`NVt9I^*Ahv(zJ*I;fq1BhBwalaPJJ(7Li3O#t)@N{{_fK@og!vr zWIkDxkrNm9WW&mvZ$@j}f;PCddF9P*2gQd!9^dwno8z1kt~xb!@J(^yvQtw>G~`cc zi*|^>ZD`+|KjHSR^TLCl7}PH8>EH97aIfOX*5N=z{5>~45zcSl<*x9bKa9LRe6n5q z*H?sjdbwmcn9T|aeTgR95g=!|>NrPoR|M@DJT0 z!xvrM?+Qmwnm8uBd+ftK!_!`$*fxCfS6xSh|M6|t`@&OSpV+RMfBUA`uO1vfG1Gpm4|9rkn z9}KTtHqjqmwQS;(;lnjOT8Af|?cO0g@ZG6H%%WTP;!RPl!;R05xV?E{Qup=!{^!k| z!vCu6KG9z7dv)E@;{M~AF+XM6&+sEZJUKijBC1a~?x)P?=D0s~kB$G27rxjos^x{A zh^WcUyl~=x|9SeZaEIYh_y6zKH}G$BhvE1BuJ3=m zg8ifDU%HRX%EP-C4!b{m@$+6?&0o>Y7vJtt{=k2%X5l}2OfVmiX}|fz*oU7CXTH?4 zb9l;?rze<2|M2hDcJJIA_hpY&kNn5`#(Zagqu${jH)Y)yzPPo=*ycm`^z@Ye$7_1L z)boFLOwVv|$^W;B){?A=%^5HC%*+n|l0B$x__}{k$MD~Z`rQ^D>~GgPe8;o>ZV3nf z+V0NgE;o8!=oo(TiC%Yx5C3{lhj6gdUAHx_jO#VCYxsw9XV>t_zI?;M-uU~%cMR#- ziQN&|t~vY8Uabd(`)<5DD*W=#JUHfov0cL#Ck$>KKKOIb+r!q+J-dX1Z{FQHJaR-* z`|!ePWA6_?HX`Y^@VuXUri7!Ny<)@D9TB&Mrx(SyZ64_Cb#cXie4~%YO&p~^N5je= zdf~q2l|S^pKKbUE1#`kTJ=|wxtH}?A-+H)D)c^IsOGEl}4m%=-cL*+>C;n-iZTjv$L8e~q|eDU>p%Tu|M2SUM>_XNNtu%qNEtJ6?9`P1 zzZZ6Io_a2(*L`>XKd%Y@u514;;kbLoM}}A2*1v!F>6r1iwExdf`@dh%yP`1+ z$IiJa+@bqJZNjgupVmG+=#!}t;SL9zgB* ze|0K$=v?dJ!GnkO>eb5=@llefj+h##7(VyeVU;k8e>rSx2atY{yS_P2+m62164cwb01-;*X29v$v;bgq&q0u4fJTxTfbNQCJA-Tx6ZCw&}wxck$j_sY3)qdX)d9U)oRBP6Zv z4#^se4P-sNGwLi^*1k?Q{7@*>cLn5pOpPqvp2kXR%R(|eHY6ALM#V^A zgATW=kWFV2sWFO8nB*~32E{VR)A?16MQph+nutp*(sNr+>(wdV`^mNC>k^urb_Er zhtyAY$)f%aS@Vor;`=#d+a#A9j&{g~>2B%5;~jW@d5lAP@w}&~RLUQ&mm&Ao%fjd9 z%HqE?$jt0AIkh2Qx>-%B(wi49ebOZ(UeA|-oAPA^U2cmba^=bkUXh2rvY8L)&GX%M z70L0(>tylP8Y#ZFM!dC!vbd&@P7a6co9L1ax8};4wz*P1gh_AMn9*$1&gw!rQ&lL( zcuj9Mu7JHW<-JrnbHp#LsIOYXhI(avj9X%dy5+#@mb7`lRyyC2FY%FOGC#IPO5aJ9 zb>BE;DbJtg@1u{nW#_~BG9WTvc5X|R_+f5|X=bnR_)Pxa)6XqU-=xTf$5W*A)?_&` zoH>M1`$LkPyDeE_Om8V^D=dzn+kRBLWZ7zr@JQ679tq(Fx{UHjHN4y}<|65Y$2?5a z<&iHC9O#kLoIbladpz+WSyCF36(cyhM{&$>aF&u5r-WotkOQq}NRD&FA3ouh$g6HS zH7Q9>4@r_uc_9fr!jYKy_xZB$VNRPNA(?{AOirl|A&Fvzomla-zMMj}+`OI-+)D=1 z<@P#Ra4sO%8pto!T9Q!HC?{XGWWuy0nSWD~>?XZRI+-tYm36fyLyA0`AZ@=%kb2S} z>C&$g#5tNhX-!X(#r`BYu`x-`zMCYSziW{BOlG|1no|biOf4nm* zeVMEq5R!v`c1!P{$Qdz{U49`epBi_*Ecn?eL-;v;e6C)4@Q>VZO7K&^EaRX!#4*ups9zTI0zbd&x^5u`r6kFS z!2#JeC?G!ag3-AlPN|R#W;d?qeBaFZzKipHJLmh33=UHE(q{6HxG^DSVIuz^a~e^? zhNtmURfgm;kDYvkVf#nU({#@y5@((c%298bL>#M;-JEJ?pD7VHc6fs_q?kKrT+5c~ z9xl0fFTDXzgyeJ=vQLzDbxCbEm$XGe?<`q;AXD5-Tz(pnZ!j#-8pn^TbA#;TeU#sZIi-UDi{BfOha#c$ccD<4&Coj#Fs5$wP__$w=1dC+Ki8?vv<_zIL8}%!%9GOxf zy&v?*LUiJEya3N2k8I^MZ5os+QG-+I8%UM?xXj;;X#I~miMxx9=;V@Zq>T@`Etzyb z2S`P=41F&k%!?~gTnX2t)ycAz^-?t2FYS-G<=A~C(rXw)?S5dUW6s@UQ!8Zhvj}5Zs_W{}S>@2yy&m}Ru@W8GH*}Wzp<9KX7k8R*}lXz?Zk2S8Z zV9ZF7?ClqjzGNi32D>Cawq6GBZjkZ^>ZOUaRktcR`fN}dFZ-m3;D{NCDRRt_B7rQ< z3LabY&r;dBBTuZ(=jO_yh#CnzS}fZbMYrm7sjORCBilVeS@o|3=`h44xf3`TIcE=T zDURhxK=HnGF|roOg;g`&@SfvT3)Z{=5yl5CtsxC$)+d`VadGKrG*;1q)?Nu zGEy#r)wR@Fq29P+CG=TUXDE`vS}cbJd$dIPi&%=kF4RbJrOZJk>PU`-#*LNdtFb!s zBDN(~$G?nK>!DaJ{VY}qhhsJ6*;vi*j@3MOthQo7g*ghSDphl3speoiDoVAWrc|xf zrJ9LtcJfclWTVbrVU!D-fUTWklm}+J(x_wn??_CAQe!LBK4jGVuPJKxXR$_ZFI6_S z@FAO;u8CFf4!ZlT2$^<7Xl-kR!Xqr27G>A^NV|@oUacN`h0=dr&A}F^)zhvmi|pFE z*iL!K{UF?fvD)%^tX9!({3KRQ-vE!oW980@RevkD8z^{R7BD*}Mnes;GS_pqFUKnT zc~&}JuLbFP*kct|kfTNQrSh1<{x4?N<`b4ulhZOAUwWNd9#sf-sJHRNejs3(u@ z=(@{x{lr0Cc* zhX!d)*EzJ{U?IH_qY$jO5V*cJR<#FWNn06;RX1<;aaP$S7M-+Pv@E|=EytWPe{9vc z;Ub0dgTw!fP(CC4_|6C_YBHzudPzxzP8uw-{BN~3Gur*58SRYnkU_hGzO-vEHvgLf z`LA^;;Axi@2ip~RpIvv8d7=gpUNDt)5SH8t4evf}Na%P;}7^D0oqx|fK zSPeYI9q}6X_yMlxzhmXyLl+OnY6Evr2=6objg9Xm=K@MiF-k8iRxg8jMQ*9~m`b(Z zT&ggvpZ7t$w_a-0NvD@l+1S`6Mv76>PBbbV8|N08@^O)-2Ni3S+iqE#LCfDUsBbq$ zyN+a353G$I2zsYL(?89U_xb{*7M03wE0t$)sgCpd++{|YF~jZY8n>1z9UCj;7Q_x& zxc(=-jq=`#?|ptoIOKYDDL%~SoxhQQpcoNExssH-4{lx!y{6Q zu`pgcc3X6Omqo*~S@{NS8ostzV>^n}wXI0!qKgz3$LFzDjmN{N=kWO*#p=J%rvB@S z!T(1xw4*6U+a_hHeR7tPeY50Rm8;g?Yz0=}xxoFqucpx0{kb}_sZ9A;_fHwxXE18g zuw66WELF(PQcZcMRHr^G*O>tpv+wLWaoDa|b4t}!XV;QoT&@$9YOagb2t>ogXJQl@ z%Sr9!`q%A^l}~(%=47$pY)aA6E0_f%Bh?cgsR^{*PexKnAyRd{7Ws5rREN#$v8d@2 zi{^h^rAc4eG%&4L2j66M3pz%_W+AU6RU{gB22E zDRP^~s`flyZl+CV>4oXpDGJ=2qLC|^bSi2USPjmvt(7N>$~cRQ>CFg5amx*`!06pd zO?=9w*#ma^Tg%<@v0KxhHEVaETl<(jH#2*#xFu41XGLlSHUo&~+iBsk zty^F{s+m9%VijP9?dXVA!~5K3yYSiZh_=KtspQ6L37^mA^TvNNSo!?Ob1^#E4uq;U z$aQ16wtM23+*ha>7n`)zfkTTOem7C|N24?qTUnm2bB(ymsVjmbD?&_>x?iZ3j!f-UyKGJo91KV#ErpJKH=QKq9D=y3!HmLu8f z;f!|0fg5(lY7v)f>h=n`)&sHcPtv^q6wB1X0KC|)?N~Q=Sn|wB9iAEK)XAG7HHqsO z_jWmj3R1Q5Q-@CQ!@--m?fBg0FlunQ3)*ds<}Jh@faQowOxFP4kKsF+jDs?^;fbxA z5vj&^qh)yAq{Y=->lX_&if_5mSfSmWCM{oEuKX{{wJj!BjRCn#Qmp^WK1xw)kW0%a zv#dH3HQvcahofbpUHhY3>!y}zZ&;a5{+O+kr^+?6C0BmCGNjgW2uh>8u4ajTKT*5t z6E$2Hsr`Ru$v9@#%1XDoU1rSub{ z=v*I#Mm`T$@62com!_+&uSzkrb@k<%0?|0~AP0GYQQ-lQi`NR>W{{I#$kv9;0-Kx-3z`Zcxk!p3jsVYOJ#G`!dAaHSVQ$zj1)Lpb_EuS~9`_iE(> z^J#d#T3w{}Z(m%a4X2W|pxCIn89;hY&bR>2`qOZw_lB$Qrf8iGa5y0m9GY;{t%li| znm<;cy5F5ze1%KLJzY8jcauq%j=ff{Zogd39JN!{hwF;1{UTZ`o;7I6GX{mOGpM@` zfJ%>)CoN!`f*nqqZ=Hk`Gh4~vT}*7To?U^p1%3u4u=(V&?d3|jDlL3^+n&l|LZ z_YJg5`JZ)jv}UZcXyY>$d1G~T7NrB}`#7)=Cu{Ju6(!mMJQ@ZtcmNWsH$x8p9e}tA zzJ~TJtq)6aI|t=pX|4uz_?1JuxntBwdyW%W{4}@S$2cOcSao6tIY`sG0(s*rv>Y$e z?8{@d^KKTlGGP4E9Oznunw~PqxquffwFU+7rn3eZ{gefuXi+~F7nZBAtFkokX}Kyv z!_(-ksmEBgEDlwB$0{_OVuz!^wm;((yf9vK7R75THl;g34KK#aZ%e$k{{jnE8m}EE zz!yGoa7zg~d|{jd$j(?lKLNV^M_|?%V304ZV?k+UF+ zn+0Xroo>x$3JrYMpmtEvF53E+=-LL1HqcR_RuEAuh-f2-$j5R1z)K;WOI6S7$@qO9 zm*Zt&gSR`=wZ7#1;NYKj{)yEAovM9|YNJc@f#dT44efMoGsq|#@L>BkR;NHkhd@P} zK}GW>Mry}Jk=l82qyju66-c|2wxP|UQy`=8TZ`0-Z3Y=dffEwI34M1I$qYv5a{`Sv z1C0_AY&w`zq=f*55D%Ne01E*qn`itzM{~di!C(U~u)>1Rvb7sjl(W#sie&0hwjRDp}sQ0dm>^IsS2x@`{S&LAbFXoi8lf zasY=hJXiC9U@P!|w({D4f4MpU9%BHHW?oNiz;VRpe8JKQ@Hh#8s0BX^fge0qmZ%ma zwCcKIt%4_L2MNW*7HJMTcR;6AG+69vJ)=T5MH6uxRP+Kq6p~ zB_Tzd0U@n`kn|~x{*6q-*whyy<$eA&?IPUh<>jU7z!te_v5?*6n!g3|>KkNxpIg<3 zja+-a%WdjQ0?g!tFE+&}h?Ky=x3aW5ixtr2%+t!C3N=nC)8SY)@GrNf^%rRAR|N{& zUqEttfx2jq()#69D5?OsZH6t&uh90Ns?_|y0*yON+V4c}m!G38zcQVlOi=(f{kIe~ zor1jhJw=}W4mD58P~a8NaqlO|x}{Jju@UEgQskiP_I?*D!}oM0mOaHH*Yy^e{PBip zM`^wPVOKS_c5bN-p36`w78swa_5)cuvmFYjFi)Kpyc&;OC6Ab7YtPf>D{@rpi)Y1c zy7Y8}4xNh7{@)`Mg4O-osxYvDbAMi`R$|*Yt8vaMwYWlib1MiS;ab^<;~XeZ++cxv zh6JCiHxK`CU4uy-&lM{Ba*G1! znc9toTDG}RJ2n-{6YJYt=v3YILLS*urGU5D=zsE*Pj|-9ol9MCzA6UaV)sS;;^dm}V?ujC#7Oe~~VAW?p z>X%EkD!!Zt7=vb>q1S%P)D#ng5T1Ykxe86bo{4OFk~Y|j<@cvWJ7Wvgc-A80wir!` zaKR^A<^Qc!&f_Oz)OCBT)`4QSZ8FGrvqAG{kFsh7Tvm?vTA`77gyjynHU17kh-t)x zZiZAmTBUP`3pDqxQUVe9_vLHk`>aI`taRI1n9iKBYS)huT7*roMk_gtsA;H69$y&M z+l52gSgE7c#Q&DXv(CSquWkR#Q)Oem0(a#p@TOF4JeRAM$!;CHi-Gv9TkSt`OYW^C ztH!R@dY8saU`p~i8%A>X7^51iD})VyoNQTkWa&3*F*_Q1nd;fq73z+2>0m>?+&h^) z+20iQ*EWO4c6+iTKXw$tj#jaw#q4O`hm{&m#DQc-3GC=dUW_&#v}&P)Cn;@+R!d2Y z_LLaZI|zIJB_SBv1lqXwV>G=uN)5Is&B8i7V$^z3p}dw5QCpa+ zs$ihM9wWn3Q5vp|Qp`lw^lXy`TzR<6%J=g5Io5)e5L7Vn_!6)N@ zI#>OaEbIMcRLCupu-aa??4P3G^;_k7 zj={E}LX}wXI?}ihzm0qZP{lSzSL$q3rFKtD(qLJ-&W5el%$qWF+OI?b&#-#-A={jm z1G0^A$@hMuA8$c6zs;HxQyH(rt44KI@Lq?9qVi_ zS8YJKb}=U`*Xh#K2dgye z-%LUrX=h}mmU6Ul9Bnm6+cG0VvmWAE0o}OTkCdqKY6_O)b}c*;x&#by^ z4uq3PeWa9qu6)D+Cr8x2v31;j+C9&3*#V0C*cvtO}hIKNHN9)txu_T*{u zF}F5ilYgdV-8XI~9K+ha^+QN0_}ioRTGW|_ULXRlpU?cC!_&oqvGVyeS2>Sn} z*5HLkG=}Lq&HLdCN)?Wo@2FDd$EzuF1*ZsaxbtdQ*1;5>z;HeA`_ep}YT<`3qmIY+ z^i}HEzSRotP15dvn6-C>TT5(!i6TbxTB!C)BBM3L^fuwkZ;sUXu!F~T7yzk>%D5Ka z(8vK|N3SnYDt72UH3-~m6l|(dM^23vmE>yiCWl6v!2k7b=#te%%5cM8U`N)P)KqKI z&iP5IOv=~Ml6>`MI<(L$Q!R;=8kt_Appmi;bKb6&S-@f#NT zZ?~uwYvjG}^%)wDiB*pYnr|vl>~Z+ydYeX5acX~du9hbn&pDTv)n(7ol*>t5_61DJGgPKPYmHHOz0+zAUA_u=)S(2lK zG%()pxe7W1r|iQWb%k4JdEd!Wvu{osjw=@nW7 zZ493Ud*X~xbtXlt_Ra0pv z(i-k5*J13?LR1h~>LT7_&486*K+1jqizkrn4EKH<_x(ne+m!(p?ZpOJb{li7@-taA zE5~Wo#w;RU*;Y-WolaZFa@@kw>+5Au-4{eJrxt4uT|Jq>XkjqUV_;@5VDlM(4hG-? z24E%waM#axQH+IEr*h@{KM2gr+#2ONkMMpg?-w%$%#++&&L!>aO;jM4Yn7Ahb#8zM z3vm7Vli~al;ApvCQU6Jl?{#KPpKjKoYt0(Kc1$(v%(c*J*RnvhWzVKC} zR$XDzl(ZZT_7te8tpGB!LMu~%Ux~#1SCz|eT7i<^E!I)&SX;58-Up_46w5iYG*Kat zMwK1lx%a_oM8rBv89ejSwWy3a9}D9Bb`}r82QH~1YR$dB(}B!__wBqt%lp|VDg64Y z6jX+{gbf}^)cR>=ZR8|Et}*Kf*5PLc;1D^V3c}_D0)I$k{pSq!O)_aqDsfznel|xx zKeIynlTBL2(Vu>TGvtheU4&})hO6^g)dn2Fcs>*5hE#p~R)@fxS~dDoes`Zk0oe8K;jIPI#7(+1iyzF?ag zkEkGCr!YUhv*n!xg+@dwIGh=e)&o9x;%63h_0V&0!O5Rm)SiYLpI#`(YTy?Co7-nm zH)h(;cMn)}u)QSFE%{crj`9B?Kyxl;xmLt z*jf19gm0>}w{tbl2ZMCGLz8x;Y3R!o9l5ha?V~BOPIqX=Uy0fZh%sRZ5l`Xl)s%BraLhB18+Lq^_Nw{8Tcpq@3Sxr;S zI`xfN!zFGRVqIGD3wOvIVuAlnmd7nTQ3X5B>k0b-7}yM^;|!+VaHid(@Cdt$SwNw@o!BDLe_&k!IwQ;;YFO125nk=lT@#6)T)wjBr6g{OM*V~|Y0MN4p2 zchHV;P{D5zWZYG%ZrT&HL-bgFpGo!fWaDQ^3Vzb1Nq9_gSK3rfG;G2*h4NhoLVBP| zsY|Nlz0`>p%ZtikYK1!7>gUY5IkPRC**OTNW5;p3=SFMKXrYe%nkC!MSz2^9OR4cS zKr2?vN21m91HRnJEamgv6>xvngc?o%Cu_<)_~Hnw=Kn!Z;{?C?D@&7&HQKogcJ)5A zA^gtdT?nxz2G2jLM{fP7Z+`6KXxyf)JAz8p?*67vNAZ{d5h9!3Atxx7{z9tHb7 zTq_q}+-e}`fX%#x$z>L#B%+~=bT*Iy5lNf68f_0Y8O?}cS%tQt^9zfrkpCJUREGBB zTwkVY(fJvoD>Nt5r3{pA#|~s_8~>jfl&&3jB5eGvSo_@RP`XY#HNwhu8hzf%$v`Xu zM;T4!N*J-rXAMyhUbjDn=h_0%@Fr@;PdKP<&H%S+GVax>E71u|DUoj^f>UIfQ=)3s z8o>$iegxHoKlpDKy%NN1*@cR-{c%{-8MT^dL*`RLZ#p;QG+>!tsGXQN#^zOt;vJ%* zugq70WWi}M;IxUrw2jv#DgRgQ`ClB`h6SH+5ZQLfghMu{!=Wu z84z2@xT4ZgJ!10@GWR=j6}*<~p8%L_s^*&3qTe`CsEq@JQ@+ep&%sRf(ViR3)P}G4 zjQ7dB971aQw4GGBN9Vyc^#8{E)2mqsa=HUZ%e5$`o3JRv;l-(;q;{ z*b^b&Pa`xpmv}>H63m-3L$=-`HN-MkV}Zjg!yC*x_&2u#t^pNa?7xDgs5-COU}bX&D{@SB+* zv5nS5)!q;HkDYV=9xZ!xlIlOsK;dZ9`oCC$v4)!~b@H59qYZAIxj#?G%7~O^R4Zc% zf}|bU8vJ`A0s;i8*uu*Q-*F(}9LQo0Wb8617tFLjQ$bUc6uNUY5}XQ@4;AXT$^l80 zA^UEKD*or};-A(0vwkDtQ+Jt`{D}iX)MMgafFlmb?Ac}7=AEZ4+uho`oU`I=wiHz> z^|dHD_GarCk&m5kCK45ilHco5FsG#a#S@_XDnrXx;Amc6s3`0R2h%~X?4nl&=#^Q| zp*6BqvoU_yOSja~EhG2FAu@>5-p3QPCl&csTAYHg6KM%bO;6DHB*^0{5)^}-yg5OVXG!5Xw{Vo>ZLuz?^fNCsI#9UAZhDm zfG{8?Jd&hyjD@goOEmHO60N_ShZ6l>B993Uog72$aJ)p`=Sp<;5{DN5w}iXKtmFl5 zwJ=URiSvxWXj=T8nsafr=6x2SbBvdUR}dgAHt6o~Z463_KA5QSp;W@;RL)M{S1MPotJ> zwCMClX4#V6^13BYJKP0o4#yRL*r|E*xJ(~HSR@lk=l5~uM4jj~=u}g*JlIb4?^$vl zs>#qCHspF41jB~LlH9V+%0t0apjm9FjVG&byS-Yi9}qN1q8<<%7|%`Au_XqjRxx-V zPm<$QmSoP5=V4sA67KgFdgBo{z8@g9oCA8YLM?YWWtm1?=m8=nk3hlk`#JI8zZIl+ zjYbi{{9l$%?8{KwLYp>FVj+RiAHwKQXY|jiEYQ{nqE_53$=nG$S66Eyw~s$}Lf?JN zpxh06UXD;>2s0$zY<@CB{T~%+=aU38=;prLi5bw#>q-mccmjupOX5RM@A`}Nzo{`o z=9$@A$_4`H>a7FeI=&EPn+INtF-ct;teTS^rvDPc)+WnziR8w}ylBGy;~K$GBL7GunCd<86qVe&P4W32+rUE9HOEEU$WIw|nxmpuj16Of_?OB!Pl# zt=vSczaEgF;?8KRX25XOC0KRXKolg3$VH@81HUI~Xc{`+mU8tI z&2F!T=Ou0*K-BsepEV}t$_I0ymOe|=+~1h1f#f2R7Z5RG-AP1JR-4rP4T%fG2wYLq z4qgW}cRn0%<}uzAVpRDW>;LZGn0D)nbZFHY0>mbitZ8a{3YpE7sd7y-DSZqF1Y0!` zw=4@Mvd*D_o*Kp7UZQg+@?|ja*_8$AE-c{L(aeO{`aFEbl zpJ!==cGrvf8VIbAArSsIZbzc#ensNItvTAARHjuiHXZv1vAZ_>!AW4et!0|GElWeY za^!jik-=qb;FU71Ohuqz&sUw1GLJV`$a+(SdYXaZ@8oFiW5t@^n5BJhx;AU?TaE#o=Kzy32|6-=3qr$z}2! zzjF= z6YD;na&(PC;d2_^#;4m=%=IspH4S&`6N84Zl|2+O`4q_>?a6L~*0V-5G+8tSn_L5p zw*X)As$6nK%yJqQmut?en#mb+6CNPur0kb{}TV6#>z#gN$MQb$qvmE)4 zWoT!8j;b$=1^>Abh6R>s{%DS7kL952!qeePl`pT6*%zT$I&f((k*n-z9sI$rMsK^0 zl^C@X41XjS79$p*@(B`-$IG<7C|xTK5DnR%Cog_8l8fLlggEh|gy^yD9B^Pwv^<@- ze}usdNz$6Ovkvzf7imqd|VJ5Yl-mT8ExsF)Ig_onShC z7K-i)%J#PWuS6?69P<6CM8hXQJAi@}oo4mKxz#r_PrhH}$$ZAG6ZaB4ekfNHmXawq zyIQB%XiF?}eipvL@pzs6C0=E;CfdHM6ScxGQSHZoazDpuKGyJeR==$Yvb|@}32X`= z#JnnrOcx>=Q-3eg8RGZL_L|jgbnD2?d2;i9Yyy$1hroz)Nww)PD8ra7Prye5N~fta zBIS2uq~@UanH!#@xtlYz{t}zkzJH#AEn)2BYWlWvZN;V}S=EYc=ctin_BsTQ&lr{Z zk6fi+%}DPYfJi8Ct7&eYIwG9fx42rH+3?)LY_08plt2@7kZZi;*(ii2w3o!lD+XV% zKSLWIMEf_fP=U!j4>pqPj9b0nMs$Imc6Ck!jx|$XVi|!g>XV-=KpDgDd*9Di!1hE< zj76&LjEj()7qenWGFg$Ni6EFG4`*oGJ4H%fjNtI+Ozj?qo*5~DL}tM_RidRA;QIkc zLjk1ef0oD-K-zQ^(CRkJF~hC7SCA)kIq2p$NG7)5culq(_a$m^tU>$Yka^Iqd^%d& zSe~6m3lFLvWk8exB;Pb^;^S`Z56F`@@0-83Yd>ZBhuf?=z0j$?8>$t|2E42-sOiKc|FG0-<ocR(2cAC|nW2_$JlaT$vaw2} zT*l{M%!1tV@B?a1BmL&WYM#VP63VUFJbgD&bxlCLzXSKM3BPeSIQir0LsAKzik)`) zOcaaQ{-`+hMguUh03+Rq?P36$9!=spl5D~N+`|A2ScasQjE0`?O4RT}iOx)6jGSd` zT+IFd9~>6OOOwEXm!Sv!xkSOGW*wV}e(=Ex&BL6dw-72nP^`KxSg@`fO}G+DeKM=p zC3$$cwSf`bm}8J}eY6&?Owtl2m%76xS~Xgt=}as~ z0HoCyI*2KhXd&~8;ja=Mz0@Jwu@cRFn>#Mtt5JWRPf0~^ zV$$IdnC}WG+XK-WtmE`{ardwsUuqJ+%TY0N?Tc6MW%}cWU9XYVBbMyIqh2Rf(EXiOL0ARu!qG z)sbrB=#7m0W6c>_NDZm6?_oek8S!qng73t|y2B)I)N%gi9L7uzWCjb>4&q98v9!Nd zuE6p#O-r%Lk;ZJxN$q31j;E-|y%zjeZ$qL)vyoL`a$naf)lC2S%4W;7!sS_<13a5ZVC0Chs=w`TsON+GPN~gyESET{I=W%_u zPVm3XSwu(|artoZM`#a1%bcd3eBXVgr5I8atP# zQ2u8*3&!u@*7^y54yzr{7Cse2;EY`mRV)Bio#nNH{k=NggRl z+Mh~-BJVB9aKpT|r#b1?q$IgZhPcKqBA1IW+ zklB2V7{O>$aIQh^9yY9Z!XhdNQS1@5I$i8dzjB>+?6K7%_N~Y zji48!`sm`!GgUgn#&*!f8y-kh$1RaceUHrNf62U1mqmQ?A7uk=-LUTNsDNdn;Mge~(ZfHUx<=;pRdu0<^5)`vE|=vojgQ z(MY`fm_hegoeErELDZT^6(7!i0i?4D%9Xb61=Q~iWx!@+w3+8si%9DU!R;n^90Q@4 zP0%?XA+pyGHZ2|@o;xiczOO>z(<`)P7(wzk*&6?ph3t2?=I=>VejIFBOq5Ptm#<;I zGj$y}@pGqJV|}Pv?zL&hZ%}Di7Zm$WD0WY9+r;ff+M*(zU0EcLH;UwQEmLi}O@SPg zM-vBp3k3zPu&ak&Sa>;!1|0nHEA3kGB07)m7!un_Ta&LD>|j7TQkV2rb8guR0hfSWUub6nQEz>e{o~k>E|9F1j zM!yGKM&A?mS%Eqk?ZX_|(DDcwF;ilU?412H0Lk{TC@sLcIFMR;#y8BSwyRLFaRA#W zbx{$n}7#X9ZbR-Ibn{F=yWqV?0FQ!LZid1hh;P;yh%IAZ!*9oa% zX8zItaikW!LQcr$9IdVAHe@h1{X0jkQ_8h!WsZhY$pLAiCfGv!KI+MCYaj;nGq>i2 zL_MdXg1Q5@&X4i%HcR?H#jy4|z(sR&TSy5+m;N44*@;_jNh|bY4w)Y{#ZO-NVIEJ%{XTn*4-2QIH!7KR+ z=Ioa7-oX3%&82F4u~dyG%$pako8`D*DT^%m;g`%Jb{FUnT^9ww6y zA~lV6co;3%23)kOSX5~D({9;Jdc~blWJWS3?uydElhJC2Vmb6thTMO%ss0a(f&e2& z|0uzmLcReQN&l@x{?L52f0&j3qFY-Qv;HrpyyjwLm>n~7HRbgzMO{%w_5;x{+PzMv zeA22ZG7zQCmTX)q;Q06P$|s67f_YM4;LuDKDbF}kbK?|pGc+4EK0^5Ri#QED!*};X z%N!sUOuNSmHN~a)4|gyR+#aQ{+nrHrzb#53bKvv&uySscJa|7EQmA=Y^DyG0t~?SE zVMI^3$%4;Q<1cQ__&85{cpv&J-TV>K9X?w>n5VvhJo%q?YxmrIbxh6I)N7G#dF7~4 zjG+j4ggzo4jg)*i4paVfl%kwBlB?g3&&$3_E?m*T^*r$ zek?lgL%ZbX=mdCR7vm^wODX!FbZ#pL*Y-A(LITPArR}FZWJM&nz@izHR0(7Q{b9`e znD@SDErP0<2UU~&kxA=6G%57yavj6=tu5E?4-h3sChGV=lx&#cni$o8l&^`w2p1bu z)H16~dwfXEW6d~mO|etGcOpFPAbT~`reyD84P!Itg+>3&(GKXB6)9z^zl&tVr4_1M zf($3WOu^Ivud8EZKf?iIJ1P?udO2Crmqlxi5B?zSlG`CA$Qz%yKZcxOlNv4}E9P>P zHSrJ>&l2*xfjlvP}>{qIp!rk%V_+C{WoSFoyGNj(4U7_d5gKuwuW zMCEG57v=J$mdA*JAmbM1a!$hc3&s!D*bhwiqY4JU8-FiGN7~5+#I}8vPwpo~_P_FV zd^Td&FY|T8xsZY&OBf`}D>R9AC2h=A1v-hH`<&bGfeP)K1JmV)qgq*{5IDZGFQ>@j znXSXzrbEGI^)Dn~MRCg6(Zve>q(J7LY#l*xI*1N z0@Qzu{BQI9Ir1}uVjg8S+ObA6Lz&eu(be1dyp}Hw@OkHdvb6MQmd^e}Kzc@*{CU5P zfO5uvvxxg=sqP4Hjn8}e&VrUTh?LM0Om)k~!H!)GK{bSw?;?^E<^$KKG3NYpv@xU1 zNdUP_3z_{InsU|nPL`V6$YgBDRj8F2iuW^lZ#>1yb=a!23?SDlsHIrRrX`rD_2Wiz z$*uUdTgx8FBZvVQxinWR|LxY)*Kk}o`z5RaWxY8{UJ{{$_X9{{S$^4m&=z_q)0wOO z-&hjA!ozJy(fBt+Kb~doe!ff_ce5znzz?u9*tEwGkH5pX*d3)d?95666?^k#yANFW z6Cw2t%z`MeA`t*-)dAnm7U>{T-eRuj{^NO6GmzVLlrp3+7Q$=~otN zZX9wgY*}=nc10mX`OvB}d#y5IGs3vct;CJ4L_anoSKA!KoVr;5Go5DcWtgiQ&~<%A zB04i%KQrDOX0_8Sq02xwi@0A`v9ZM?#CE@9ro{5EBaff8fAk~H*bAZR2;IqD;fT&v z+$AhprvMn!-0FIe@Jl@lSh7(a8zQs}>w7*z8y~l5`s3vPtpwY(eMkuQpOvaV1Z{?G zY(QRnt4$7{e9fJduYH8(Ctd}%11)W&oj+}jx<1L+bPm8pxqf&cw@P4kQ`+doTy$ay+9-5wZ1gj*jje6QN>+NW*KOU*c z*xH}TbR*y}yD>&%1Rut(sZ#jUlq4`e!v^^D}^crN=4g>`+BE5f!`*RCLW@tCO z2{ydnPL&(GmOlXV8DddO2EnP$B5i0zTANIPl3}W8eq)d@zh;ZPo+2mk9LXik2u<%{ zp;^eHMmzEcn%mK{6?F6zM+`N=}2wCHvAr`<0t4bY&U0Id%I2N-e=vw zQfJtdA4DDy-(U6bNcA0z#QQx+y3B0C=ilQ4t|Qv{3?rNV4z{3Z^(fTTV4J-7eR3V!po`~lt+OAq=nTCzlWjV} z>}oD|X)fD4?hTsuV*QW0GzxEp>yBC>Fwmxe=~aqqC$acv@nV_8RiyU$sDbXIdg!P1Idw(JO^;x$pcM~ZiDK&=MZW4ee zG>SmiSL7RP&gMCyFC^;pXV9j7@#KG_+nSZ2{y$(1 zp<2VnPbDb(cWfstw+XCp0#yUn{tJnPHU=NAdFSRTt#v_C+?%HMMQJ*@HBBqAbe}X_ zw=_yP!2f3iBMj+xLah+_x`nyic;4kM)sc&HH0gdI^Zih$_c>%JtWfqW-0#b)HTPF^ z{R?qA?@ZH@pfv3s1JOK?t5ZDW-ro)4Ehkj-RE|8bx@XI%iUGcOIZKPT=g1w3jC&uY zzRHOejuZb4JiuK3CG+vT9JstPc~>WD$5psW*rBbcD$Mdi+`%o@DDYb%ImU-HFAIC(D+^lDc0~gSoWJ$TJ~j?j%_TKYg4h3A0gX$ zM-@V|Dvg;db+|W0%l{WmiU#ye5ZM0Od}XJjaGO>kuQ`=k_FWqCKA>J{|>-u#L6IulrVjnhH`hW3f?9v$+%zXv&PpIykxRtJ4)mfXg@lFBDd$ zu2Sm%47s=sUS|QixKP%Xe4?Pl`*K`5=T8+JKXjansD!W%a_R+crBOKHusqf6&esZx z*`LWKL;5NbjP9WlLMb_eujXicKBC1Akdk+~dRdaq@3?jJ67G5K`%~Kt@_ZQ?-_5Bi zqwYY$-%M1jxR?0N+)NGL%V5J6dl0w39Etrx$||%c>Qpo7(pcXx1B!M0OgAd%Nn|i&|BDE`@9tt% z{+6c@HdMDW4Ocr~(_-?p{W+u(*!=Yz9M<`)fvP8V?Pzt$?=WZ4lcjO8SvQnYoTQB4 z6>ViC2mTgn_xH%6|C!=LK9qAINi}1)L#?YylyR3sq26m`c-Nr~h7vgs{td!7#;E#; zD&>b)sr@Yf_=6bl0*B^&KwK!QMEzcCi1oQN6ynmNM;RMbK@1u%&^E6mt@sci`2mFE z9&qBNlxnyH{O@(X5CKW7^Qjq@oTxE&KIh32jj{7yc0S0?eIpSrEI|Js5^K~fLzO%@ zfY3itGH?K4cRSR=&Ns00uuIpdjh!bvhBT9%AH6M;Tb8rFGzo-5?iV|6W9RAKCQW6> zOE?Ih%P7miB|5_;ih0PTX?!$|1h!?VY48 zd~sw7qt?@`A->qm7aQruS$6}aGZQrd$mZi?Rv>9t-lSs9r*^E2oKmr22LSpv3o3?xS(qO4~pi)`;q*fM}S7$9G&9Bma+_O5c&DkvGzGI+74R@uJa7na*3& zq&L$vhj#V_%(QsG0UkupF~2v~s5#i^WPxEKh+M6xN7I!Ml8$VK>C*tsLdk?yG=8=9 zNm_eRjsiV%6vf8tE(GWQop2o+w!Q@`x|>9#osjQ?5UJ&2dn5haP6wpHkWqO*t0-V}Av0BI2mS((kA-DlUrKPbPmG>_{KTe8&+ub8HQ*NI5%oRp?Oyc}zhQA^Q-Zq2RM2pe75maP?k zBN(v&2@UOne<7>Fx}J+yZ+*Oiu@gr@K>sDU$R#}XTfAbhj%$c?PG!>h5D>f9pu?!< znx>Q5@e~Tn|3S|`Yoqi+nQY@!MsTD5b+x&)8R=YYms#E^EU)t+AF{LLKUAunuclEn z&Z#z}bp9V1G(9C-{bpzx)_Lo|N zli+~Vg_QNk#>u@8FWZC?<{r4l92{R~aE=c1!4^K)#s>qux8%%06zO{#QZ|26 z9g%Wdv(@TCjFOwC!R$1hx{oO4{ZMSdq*Z)^G74*=mv(g-G#i_HW3Kl4;WI)ww?RVt z!HD@o^Q}A{t;)xkKW@&YYtNjo=LpfbBvOOe=!d8i=UElnh)VTxo4Ph})Q8J7dbU!w z&2}B_bIElFQ}5Sitt%!!^u8>0mSm~vC$gO`p}Uuu?$6R`|1uqKLr(K(yc{9%I!YUOfbc7} zDPfQFk_T4nttL&p~3@$R(oWcYFo%%s%HUOPH(m&%qPLJ*{7BP(B6mMrx! ztSVD@OPVI4zH&xoR;&AQn5(z4wcu424tttHzKd5X6ly=M<;p~z!A37ND9l0h^TjH( zp=;#zrBki}w4n!3!;TuYz>uu|a4KGHhB2L*p{4HtW-|$1?5xp_hia7nRgEV9UZW-R z*68R@6*}Trt?+lb{~J3&JRhXVVYaIFPm0Uzvy!Jl&i>QM8hRv|1ay){Q(QXxK16bH ziDui;b}UL)=JiGDX#pd|I9PH47+aC){$kh89G2a8R;!)5U+4Zb;jF@vzmY>pmn@Z~ z^ALq*TiRqlrU7+nB`Hjg?j*p8xNop>K)b8V{TU6-o1uW%Y>7iqA$NC}64 zXw$Q#j#5Px<;r7XJ~cooBz+sX!t;>V9c2nGFllxV&|+yvH-u zc6AzMeywspT&AWUZJO>p|7Q+i)XBu2pupkq`r`&w9n zk0EX?VF7C-y7ovB^&i)PSkf7Q*aWOLjq-YeT)L3bOIXK`hzAq$6nrBGg>}B?*1`_t zn(G`&o{Bo=D#~!a;!q&$=;2DXr+B{?@t_eZoz2~otL*R2S3u3xENn|&il(l@ulos~Zzi>$W>jdw z-^gmX)U4X8iQ$6xQvaK%r34`mM(c z*j@KxAO%2sC z)@a>f235goxS&EF!wSD&oh(-_*^cj|X?S_ECVjS=RDFk5{+H@#sg?425NQXO+VoPP z8ec6`(AQboIpjnz$|Mo+UV#=ENu7P)rse<5CXNpl_z#NKF01Bcm1w28N(t{V0sX@v zQ&PIZ)8PUhWW!%WJ`+%wc_|>%O1UjFDu_9S+W7#rBOXEt|1gB)trmsME7V{>p<0*W zK`*tSF|ugZgM7!yi#dE4#FrCR@=rdT#g7}7z|--?MQosZ1C1Z7QQ=& z(9B#YxOo;Gyo2IGccN&1#G>WcA$I69(V_L&HcPnz>Phi_&4H{B8lK$Y?i3cOATGml z{J%pZ*_!ci}4p#mPaN@fd?HBtdNr5o&!Yg7pKz!j=dvIBzeZ|L{DY z9ub(Tz&leps#NXbbr-Lrc=eUY4q92TIgPU}7nCgY_?~f}QSE znVw2Qc2!2^bGcd*t2F(Z3^Fj2)L4_ODShO6zGl_#Wo1CJWap7Y5%A_?qe#IIs zEd#z|b$&2ue^qHQ-Q06iHbuzs^ByHCiY?^zU{rztB#vg$wNxpr_&Q1+zH3Bm7G_ikUT0SrXasuP1T&(EJAXWXm}p2-t_s1 z%*+%E-IT0!GE>)mQJ@tNgj>2JKBd z;+=0#~U49v`CIwZR zygFYyLh|M1vTEHQHd(*6$ukwn-G!N2buX!WrIk9hy+%VzYQT&&B)XB7c{7>t&L1eN zT|^OrqXjxh*ZJg`w5>K-zAq;0^zCIDej-JU^|)1iDT-Q=tZARG*4ZO#G#lh|CYr+a zFHoN2XS>D^t=4Q~m9{aK40 zKbyiR3i&fdr5JSkn9Yo@<|*n0icw#XC7-_oojS`huG;i`0R{ezhpoqGhXxI z6!4x|gZJRi#S<6&l$5-GKvq0dCf8`D9LW}WVsST;+;|&z&Id+q|Hw$GZ=*KcWJDo} z|G)8Js-704>u7$u&aGLk(;3uq9VB%wff`RqluN~Wj8r}PGzlIDM`Er^r*h2lNCcon zA-{cvOxHJabnKc`nL9{Gc!Mm*A;R+a)yR}btmj6j61;H9x&FREq-1SbLt(Nt+WJ?r zrvAnHKck*H9cPl&=s~&s>_X|~B+Y(_3I*66rD(+kDXM+~VL1f|_a9AF^M50Veh`Sj z{C_62&ilb4iqT&P@_7e3w~GKpvRzYN;ISTG6sb8SLuU_=cC+8XWkw4akgTO3<+B;w zQO?kOIZ7$PxSBZMMVYF<567UK2aLDY$mhWt^$*m@e3AikE7k8ABXK8CHGWX2rKx1H zGWaGJQvb67l*G06{gD__@oIcL$fx6W<^r>p--miCF-zM&qYiMVO?$u@8MmMlKS$7W z6Y>8Q-;#+i3{6UDj8IBrxKb@DOCw}Ln?92`&n$%EEI4BHfDK%D)mcJwG;Erx5$-;&eu$+C6`ot+Wy;N$uF{Mc{|FP!6ME5 z7;iSsu8ErfAL$ty&BRL%16QnZXxhX~?YW=vQ&FkRxocFtAd}<+hg{Q42g`4 zl*p8f$c%{043&%b*B{$+fN|!`KKtyw_WB;n46QlmQ>4PIjZc~7wa~0ynzfT(7#ErG|0Sqc2ZUM&x%4HR3SQ)A z&TIJn_*=3y<;#B;AO>bJGvsbErGMwB*I_|;!mLOy1?53TEFfK*lA*q38Csi*_w#j0 z%9uwAuN=k1M-|%j5Dv=+vvl+<1C^flug|iQivzb?U#KG&^L4Zui`0)-YxJEa%!Lw^ z@@tYV3}H;mUd`dsOC1G-R;zgIe2{66wSk(iR>sX(Z$y-8 z!(F82XTywmjkP2vR{0re%KU&8w1N%D$YL3eT4QlHE|K@e7?dk8pKprSm~CXk%i;gj z#A`89nW>+!FO0U!_Dqc01L6Dykv=(L(w@Q9+A*J65cg2uhwgWaPSNHrbc7HOyMT2T z^g=?cCdPl2%*h5Id$&UQ(S~1_ufmZyq5g-Yw3UC>;7V6~nWE#DA~k_FNE_Hf^%I)& zStNPC@aAWb<=!HO&HXkx)mZQX zz|fX0y1R!-Em0xFpH(Sdr=~uvgoUSI-j_a(q_- zXRAV+9!^yJrv(}nAFqrgj7jr}^?nCxJC99AF2s{>614j_$SXw&ir+@ez%8A4IbYrE zs-|3FSKNf*L_JRow>$hZo{-XPolnoU>g<(Vxt6ABogKBCjlKOj2xyzKRC_pGt`>Gh ztCHn+3P3UdQt|!es^;6bB&J|afxuu~ly;59Hb^G`y@iih99zJD!U6(3J#^pjj| zJ)0-@QD(KBO;Ug5DjnO4$i$~uh2w107qw~2X4ox7=zwVc55(&H%vkm2#mbTi)rQF@ zexyaN6D&Hw?V5ZgU!G7m19q&GyOsagY&Xm4*%-C%16XFmk-Zny+kT2rl*Gu;`>$sw zte2H}8hRieKM3NzHe$g$DbY10UfbCx^cmoTxlk=Ftwif4CTVyNk#wjHE>W4zUWP-` z%-*lH6k5Mkp?)Z1xK%T9n55=J$$EzTZ6Ph3A5OFoD$|a9PoSyESVIjIoNYqY_ zK8z=~!?5Ds%2DX`$*M8i2#dC7YlA;KnAbqP`R1cCvSe@}DSe5-hF8awcgtjd46FR- z>7m*f#V7Md115RQPEz_wAo!0>I{yjvUk;iyH3*!a3mMIY>{(ERcQ8@X-7qW7fQ_Yu z^t3&37?Q0++{j*Va;&vLPDKTn3>2uignj<%0&R_jzmZ9ln^S;GK>?L7*t40CRTpB@ z%NrFtXipc&H=e)IwpOE>t0<7+5g0ALA*}Hs^5xjg&kYX)y^zo@yf<4jNo3cYg3$gd z&|1b^?;#N%S_>}!S)o;^R;Z|6QC-|N;T`JGJhTllM#*kc3DbM`M-YX46vC%B@?Bs(vt5JN`?lmSQ#`4ggk(|__n#kX z3%QRrAQfwfvcIA}lTS9rp~afwhLGSI0*yDQm4SLdaM-8CT;ODspnXNif=&c$NYVi`(`|~T1QzY2A(GO_mNe@6XRuG zS*F^J>>s$lxp750O&+=FbTVUTwbl)Ad&}vi$6{4u$ApS@semaw3!0}D*6X^NF-rMw zA+_VP@o~kSwZ0` zgl3+gS;3%LO&fBx7!>Q^e{wY$B&&Qx8N_r-t8fcugKCwZu&L@T$}w>(4l>9#FyN-$ zYtsBUp8GIzMVT2gJOe8BVVYD{sQjCg^+ z6IM!pU?jlE+|8|M=T@BOwit#HvmeQ#hD(9g)767?_0DtLzjE$hNtyhAN>)$;oUl!!gP-;FNut0AfrFK-*Nc4f-CV!fXCrGSpk+JG}h4{aEd#p}wG$EZd zX~8~|PLBrvTR?FEGSxowVl^CC&I4F(Cb*yHzpxxA$0!hvv%n`qq*8)GJQi=o0q3u1 zbw!bUpe_Coe@9!aMis$+eudWqiIuHj~?Ydbw3_vXho%2+CDp#k8dY#sobdKBCGLWjK z+*DYy7}G5_=>$*H?jI@h_idrPUc<2Jssc?}P^dZYmdZ21Va4G*OMcrhAB!(i7mH0l z_q(4*EH^I?JEm3Idk}+(ZlYGpDxE*hB6LHt793%b}k8!0>*LBjX9j ztHQ1nN3xclE7JORF`f)4R?m}(%IybaN+e)iTCOQ?BF(Hx;f--hxQqG1gKsyrP)+v` z>o142hUnP03g3^Xqjab;N(~&V&lsqz!IlolZWjR724K0R*1dM^Ou?%gtj-&J?#Oyl zXuxgFUWFP7+~xsJH=Kc%`YAEMl@g(C)zCWP|Fvwt>(GULham;f+xCA4-{VlUBS}JM zXUMmPoN*O=5Vs^*mY|MW?h&`TTT+oSZ1hx-^mfUu2qUr-MYt5oX&UAH0mu zci~D*$%qAtO4J>fBNrd=nzxDdwjrJ7^A*)YXRbtn4G%@B>whp>IBuNCBtokk8H|k* z3YM44v>jV*A3*4~!35Rz;#>gaZu^F(2H1V?ub||+)07X)J}KIv(1|R)DKUbvs3}11 zy~iq4d7*+$3o#dJX)cf=g>@7job6*FN1EwEiq(;<}@IPI^_ zmu*p8-6-r--HeQR2Tdei`a0WW}O6uF24(8%nitszc#m z`hmT1%KZ)L?AbJGgc23qj*4*-^qbrGf30aMw(xBmbG80%<^>@90d8FY5dIk;+1ghb z*#77Ro&_5Qh;~oI&M6g8n&T|M=mSXx^nckVm2V-}|E5WWJqb$cXIJ{DNxp#26OP8= z>1R^88}Yh=M!d}595GpEhL~h4)8Y%ze@$4wLOw4`=b<~;5g`q zCICD!g`*F!ZPG%t#oH)I3|wnn0AA|{hAS}K$>6pd&!BDv2i$rG%2-B!%csQn{;-*W zY5jm{Ex@z^z_iW(OH?>8tv!#l>VFE<@K%NVfN6)mB3JZBh0a=FR8LHlFYxTdu2O0~ zK;synug$&r8c2jK&l5MXoaf&O%yy8drMfji?WD}I?@q_JhskGest!hz@o>S*35K)1 zhf+HeOj@&)WjX;r&wUIq(9I-Z*PXq2TIw33rK$LcFjIPV5_;{$9c2M~z9pn#0W44c z!-NEQZJdxIZ@|f!((tsu(*N=ci_`Pw)tUEXU}uD4mP_nEbw zR{lBO9m@zPmr^x@<7keR7f?9^N*+8wJ=krqA$B=byc|ZI!zOot#$8@^{2wUU8JnR& z1M><1<++(ftp6aCP40=x0HHj(Izeq8lG(0AV6d`4qWPK1RR1%XvD0t@b`vcDN^V|5 zxCIEgDJx5EfRpE@Q@jj7(it!^7%(yvFtg)wnhb!M0f3o14SIhmGUKs$g{8xQ1Dq$gPK*mUB_H0=5?u^OF581`D8EVL0GWK_n(J04c9G25*x zROo>f!V|35%VEC;0-G-5Ipw%B67vz-%;FW=Tm&nEw!y|@Xr$OMV<7M^Y_}I#WZZ{d zXbTDG9dJY!=To|g!ZoXbYLV}IdD=B46c5=$&~CW*y*x=%xcF4YKs!W-cq@aTCLce4 z#()?Dh7{b*83XHHG%0Yr37Mox#fMfa)YS^Fw@l4kjKMvHa*HsV=S0fzXr#{jf$wtM zzRVyWT5%)L`o~Z@IG#=plY0wNi%UdUz`Tuzb12UOi)JrXGJ$!mKH$8w!Feyx-NkFt zRerx+qrhj+(cK>4z6a@UH*jAcaNi-idoA6)m+m&)o~U-ZIsn`^^`k5ufr2r}qdY&2 z^xNlY3hGId%R8x>2L8K`TT#m`mo2dm# zk_n8r{T3@rXt_H0CUsMxWPtHDMg4nQASlzkIWIS1C_|e)86D81PR(%qoe>7?)tqINedId2#3iPq1RH&(X#pcEW#g|9#HmW|2n;uCMWUi3em#z|&)R zwtCDYAlq|PzlTa^NM$bgLAM2}tFaJ}I4423r2vWDq11PgSOC?9e@hw$sIF#eqLP}j zR0lNI0c7jynXD7e*fjk@m^YH1?ZKpG7=>-&f~H%CkXpWo7Oxh`J%my7T3+-VBm4?3 zW_7@^&jTuRzK+)%;We`!Ua86JO)RSjx+FUNGINS zj0QwQ^G0bCNf@^WyXWcF5;b^HN-1-dd@^IH+lZ%sE0lU(;6xicakUJ*aMvqE3Y?DS z_gs=@^7=KaiGI0FojXCmGpUI4SRQ1vSZPtTJQ88cTVT&8z?SD2m;gaJ9(Rp1D>Q|c zksYS+ukeE#mW{wY#-iS@bJY2Mu>uO=MN?RrN4t6M)6_i!!KK z%x06AZ+9FxKX|dzBUHC4aj1R=B(r(YE88n{`mYL2y9-*z$IK%=WV*qGcU=>U9{^MO zqYlh1Vl{&RW|uquKW-4r4&A|{=0c+BS9IP!DQZ{>B`+^hy}8WkGz;gh=?1M$Gw8zi z@W48uT|lK6bp?_EREmuTi<-X5(M*^WTk~_#jS!5&q{w`ZJi(;|xxki~O0c><9-Il5 zM6Hz&t`pejaxOqZY@s}%Ni@$cQjZN)%YR9sL6ukxRbuo}K*K*7JjpoZO-aPz9L^VP ziSY!jJ@CA?W?(9mL6p3om2fHf0q9%n`!E`TLD9)rS_^w768c8RttLh8OqGGy(i^fv z-_@`xVvyyzSlPot1ltb(>ku>7)Wet%{F0_K47%P-qFNRrUlhi{s&qx z6yK7qIj|gB;SM>wQgG;OqHK^C;vq7mKx9aQ#8Cb%-mr~EjezMebAnOhId6)>sQhe- zcD195T)^+FD`Hi<&Lkr|k7=+O4BJq)Zbww~on5wjNx{Jb@rB7S2^PbNYs-~O_a{wH zkvnVphLgD6V&A;pM3VB?3b{f!w9QBB4dJkVJ&O62(b|y*2RuIn90Bqn#Kox)7hV4( zfN{!E`T_Lc-oqdS!&*P^61&n2yt`IKX%5YkbK6OFtF*qmf)z~b@<3#Y6mQ+P(b~8g z{ca{R<;ZNgC3FA3r#@^W#Kg_WYaS7gqS6*-O>T7jmBaE{}81#xGrbK|T0+K`N|=6p9NcXUd)9`jzGQuRt2vyf4$s01l0>}sl?n%@o>jOAjXR+!0 zgfN+1PZh+oUT;$9kPcdi{X!d1#Ic?7W3w@j4TvuUgnBqYy+5KESBAK(@EC_v5&p<5IW*@y}XR zeuXXhQ4m(R0S34Mv*8BxT@C&p3^~9VsJ%P^S!{Z;cAlg-G<<+V@Hjf`*-RjX3Wpak z2#;elynwy?NG3eNKCc5rWS~NV7tjid=1uF!D^nx1jdnO5?SG+)fe+AS!+d-~zUuDe zi$$4~d5O}@Q1RD8^GLnI{NGIXyMz62DnS^s3lM4_$i!PF9fG580rNM5`8V(_CxQ9< zf%VV3IZB+A zX`Q#@hya{FVHo^BH?aLRec(NnWVRboK((+)fQIjW5P2o!gVs|;aJR|zEGMl7rr!ut zqUU<*`OYuWx=L8j`zy59ze44m)O`TXZ}w%^3v9n0TrnO9KNUDX@L8yP!0|x~P1+0% z!(^b2)G3M(TA@X>ei)~NP$f3>5*EP$D5tyn=!rx0gb|#-2S$W%PL7(OSS;R3>~~+f z0>SUSvvA8w#4UFbv}&Jn$O#CPfa85zx#)>Z>EDBfouFnEZ9R$3^X1WqlfVUOkszS8 zN$`J1u!OcV0o8d?5R&G6FB<-PLI9w{6tEO^6V0&9tdZdQQ)|fM&|JawH#Wix`k2|V z2`|`B;D&KNfunacd1KnlyD>6eXCdMx2Z-RP_8 z7!T%uf^I$v+aVmhe)&Iy}-|#PjPyIp6-B{7E5JxO9|l+WEzdkr?F&yQiZjK_Q~i%$-d9?<-t^>fnWU$8TQ2^WCO zY75y|UfbyAm z-14Dqj!IGf5DO7xg)whXL(B$0kT!fA9?+20;vpxTTb)MyXSV6=Hn!71@C`}Saf4b_ zy(&v%RufV|I=FB6KDGc>0%p&9)hf3_ z4vCGHK)(l`05qay_@e>)3cV=J_h-O`Zoq|~02er>$AsvT5hs+xP;ff2^WfRvJ}p}r zuj2#gnoGq?GN$VxI}ZaNel=gazMam7L_&J+erXdW+zsT?BL;uKXL&eP5aDi?=G$(J^T zb5n;wXO9~cvAM0j+TVzR*K zei10p>66cqQ^KAvV-sXjOT}y=MyHx8JG}jVL}YTgzyDUp9gfl z36_h+TqZXF>COz`cOdwqty$#rxu?MC3$D)71TWZdW|PixOJ{(9JAr^N?)$g$rB&%5 z=0{;dq?fQpz#m920EzB`BGpnBtJB=)F^$NnfXj!UghKyLwz?LgdT&6Sydqv_C*j%5 z>+K8637t?&m$Q$1jdHCUp;x{RfXy+IpGSk9y8V`^TG|NE(+tp4C(zURAf&ywp!@r+ zSScW>-7aOCz0HbZ=@jlqAe{?9D3|^QI1C0jxx&tzkgQ{+$ylo3UId~Y2%OsS4D$o1 zc2ybo94K`UsP=fE)BsOL`ax8Vi-21|wj)7PBeMXgzzt2$6i{xvKq-Kdvp+^P0Zc2< z)%hT$+1BUD^8u4uKsILrn|8;MBKsm+BY{K%>kZ00x}+WLy8VfqeLqR>Gnpv13^UnUUtX> zMAW(qICP&^scb-^HWZB$Mwc>59at#BR0I*--jSvee=svnW_eCw-~gYWhM+J6L7@TY z{`4PMHCU`_UjlUp@OsU&kV`6gaw-6|%8_GpT>FbbZZx0Uan7Q7ld9Wy8`W^mF>Tua zfox72ei7g90V38dKyfpWVO{3Yyp4czA7R;_EK);8g&qTve>Pd;FH`5Io4rF$2Km4Y zHGp=uT};)HJiw`E2}bv$C;hur#wyCXUjkG3nYn|!U+&6W75|(JFog`a0LFyL3LTE* z;ixSs3NJy)UX1vVHt3ABatU<-zp}_OH&^vnlP-TB>GVBiYH7~b1W?RTXJEB-KtOR` zB@>umWFU(TxL@y81RS|+!vQj<0%VQ_$jqq42@$d4L_o~!wGNHAj}jeUR*?T$23FTi zYV4{?`R7-tE`%<94ssc-@-{%kPe?ogO!j}1rOkY+-V5;gs!6HbO1;-FDM$-SBEZPD zaga-jK(|0TcPFEczLAV6K&2TZG#n)Kd=rU>1>lI&f!+Z&+k-$sM-czHxvfMZo1{A6 z@EM?)jb7k6pqVDn%%rX~>0Fv7+?kABi;C>KHzSpKSV_0U^mKru~#m%)Qk>bV@H zV;r~MLK#k)=@hwt+Ub*kQ$HZT;pmY`O%P?P1L@7Cv9P4ta;yq|IbFutcF2I>_rsI$ zgDHaThF8k8ikZM%fC^+cfq&uyh+@X$X%sV$Ajxu$ zm0vo#U{W~77V0}ARGAF6*ouIq6(LI>a-NZcxf=d1_%OM}w!`?p%{at|4@IN@09-$r zC6CEgoklQ{-?c)G2u9AYjznrp?GKun^9d`dZlA&y>@*nBPxyiJy0M(s{0Kh4H(bv* zoVE@Pfst}dO~afDz%Ayh9O^v&=_sMoS+QrZ;;KiOsE^#^R+QZ=#2~X z#vsY2p(sR!Ur=6|yq^Pskz=$270UTHsISz>VG>^cw%omgb@;iV@MEgp&NZB#j25R z96-h7IFqJIced7FK)*+5R7Lmgp!=qgfH+F#tNAUsAi%Mv*H+2>xLw|Fty0rKtUCN0 zYF_97J;hCFd!qVCY|U?ih)y$oV$=Yw`|b>$!6B|J1}gmn_d``KN_605+b0& zST>yS0D1HIym|T!MYtA_0mtEFJvqFpTQQ}*eWi*cs10FYJ@UG zgCjs-znU9qRvvzZ**(_h>3uM(eCU`t9GaQO8trF{YA* z*QZmID4!WHUA;8R6mol8LV3e*77#Mtr{Dsv1h`yfl);Ch!wuo;qp+Df)#F4_F_1ZQ6R85)9|l zwP6kO%hQx-7?-5r#YNivJYwYL3XNP+A&d3L3Y}Lae@MiSkGa1R>GU+B*uoqYcBbhd zOYej`NJf`}UhiRbW0jlFDmU6e5Q1uA^4BD#ny~II%~B_|7$sHR&%H%da3D-GQXy?I`)trg0uP zNQ&jMK}#3l?fiJC1~_h>&nn6JK^)I&p3GLzTV~}v~tvWUywtl*w zuCF}FV)6+FBXn^?Ds%W}x!QX_ZYcy7XCa^kHjqqOR7~m3T$$%ObYu?f=BFGQu#;eT-NGQKiV&AbeSb)q_H3zws40`=-Ip%)WT#yo-1_|6o~`UP-lF04tQ{0XHP zSle;TwnxkM2R;GKtJHNKiT5YqKVK66J9d<6)I0cc!-VXrW%*pge?G}N{sZ74Z3^do zH%7w&h*r{5*y%lq?P5Tvj&fYPkjTlO`G7X_625K=AsaIef@WjcBD{YX10I->lz)=1 z&$Bei#cq#|vRJ;7;OH&&G2J#)FK7J&c77i~}b^s7;K8YR1A*G#yiF z3f01RC|(LdiSe+&M8=~PPXHpQs-HkVh@e^-6P{p$K}1XOL`oxwl!_S#>wY0}E-%yA zsxlq91hUINHY6oi8o zn6qC)&jx&&aLg#{xew9dJ|3&R_m(KrPW2lG(k1S1D+4L}YcO9Hl9Y)nsqwHpjKmC$UIJ_jFi{lKYk84H(yi%sxw(F>}vLP71c}o3M zliViBdBo~mNd;WuHqz;nNT+AcOw`)h@PB5-V8sA#16Xj#g0oo>7gG%v_^K2IMzUzl z1)%UO*AQ>02;%?VNVWZrg&QsRRSa$UklItFS`djYD8j7xVlbaWKrYWP@6*;1MV)&) zTGrlodA4cCf~fD12}sx%Dd+d#bKVfH@&@Mk<)lfzv*^r|jOc5zPP+l|_&ZD>`P^G$ zhTIXSdpuOE9p94|xFt!8mt(t72Z#+VbK|#YJqKXZ)er^E#+v8qd`+A|qI(=Zvzw6b zK1}?7zNthtt4mZ>fO@GGH>AokIlV%?j>To#Q%aDq1|3j-x%#=N_RrYez8k7|F7EtJ z79lRKse_t+TwM1EBAQVo73wyFuJ)c@oSEb6f4&urGi08d+YH>nZ8|fIc_E6$>{c9B+>^)?qbtgx!V0f(??M0R z{xf0JLKra9@Nbw&px{K((Lf0H89UUAtK?tJ(iv8&S!W>)JO$66Z|620#J8R=iystUl6n*SI1R4MLCq^(`70(z{c&K+N&Y}#3j39Dnk^@hmfL${a#-D3ND7|dcsxOCwI-Ip*C|oPGf*g?Tg-lunQf9)fe;enJJ==T zbm+Ab_8jcitsGktNm9dZ-FywgWm=tcuq+Uo*CFN4b!I+EuxROVe1P{B<65#2tGu~T ztANPE!EpPFpHTEDeBk_Z092 zX7UAwJqU?gDj0gnHGpIazaTk1cmiLvX2rxuzdEjjAqa)DewXob0IE}2zL6x>9->y zBcy_ftR0t{P}KgyV+aSJid#E{p4rW;jSe8>d>b6M}JR^xECS{nlivFIfWy>!%uTx%c(gIO}( z%Zn8Wkez)O_TKOacJhsDAHrhb?2D6cwVK+YK*c2}FdCKr8Pe zlEMA*+%;?>zN0serc0}!VFf`(1Si~5#^M34x3Gh?0t9Re((2t$JJfg$qx{JV)ql?@ zzYHDk(L`0(ksm4rYzFNb{5(rFzmrh~Qyl$ZK2HewU$6V<8dun;uVw4(gV-+b#~vdU zVsUPXik}7dc{WS=g~V(x(XGJrr`c4lzXJwqSfZT56P3z`ObLRdg5~C%2_c${<>o*^ zw07Sgr4}EID``FlaX_N^J%CEu2S4%q`O>sH>&Ia#u8l(?he+U_Z27%{4U-EMYJZ^g zb_d1-*>;Tw?J5NIs;bD=UPQ-7_|`rkUR_TV$sfeacSI#saVj+V1Uw+Vbu-f2wGR

lHXU4?frU)JYl3K?yL$~`MbR#Rh%x)2VZ=i82~VROl|KCL)aEqv=W zwlYmx7o%Ln$yFIyI^hE4;@vV$o{H@TPs&!hb@B?PVaCH!_W5q?@h7G*y~d`>+nB1e zfxs;ju;Xki&@Mibawm94D^7yZ9OF^4X2 z$5Z5wo7H37 z=)&oN9(rkBEE7l`feO8}Zv}J4*CpCQ5vl4n@`fL-(%K&C!$4@MMq0Ol3!hk-Lb3|& zS5}n9W>cJ;V-FT=#x8?gzNI!m`@i@9n-KM!#)Q%@OU28wuvUei|0ux)2J{mq$n{{c4)HA~kyPkdR3smg3e&EwRMld1AIQ0&q^oUFqQ(+S zu5AO#JrB2-+`<~ZsMm02O1`M)Snj{`>)DEYC`Seo4D(+`6#OxoA7HXUzUipvQsIO0 zh=!D7F3zZ>oZ|3JQF3_$ZWzb@zYR*dKsolyAv%2t;QDNsGXFwk@EDtu{p5JPVbu&2 zEA;}=@mgv@@C7^&Cj~s4t<8LaIh|$1b|{q2k``HjLTNkSU>#|ZOJqgt!zwj=2{t@r zIBL0i^V8fWLbV-S{Uk!QO!Oh~?PLq>KY)y73* z4%`s8hnPb?!yg8^$1y8*8MUljQ=PzMS-EC25xFuErT#k+<>UFlDiz9vbYdmnf)z|m zNb&GJ;^BLkV7R0vA>VXET=pNVSZSMgbt`4kzCg#-!tsM}`5&Re?U$5TppASaMm4?| zmc&JN&g#ec~T_2{S?OWoSP# zOj>+%oaQ;wsTpP0X7pS`7}lLWh^p~3w&26qf_)6P<14ew!|{x|C0;()L2wC8mHT&8 zLLIxBrwpg9uM=fxvnFcaSBa`xN=DniOx54v@l5_UHwoa#kU(Kskm|rPt@l7cm~4b@ z1E2Fgn}+jd86m0aizbI}Owfg}c-bO|2V(P7c^viIBE)C@C0hG8zCX7h&;1Fd+=E8V z@ubGg4Sc5X3*urjtxa~FxF%D6W8ilVU(WI?#b@E}E;pfcCYv>u zDi~|w2tQz#zJ_A?0TzpU&XKf@D&|`2ij-Rk!Vb*tb6c$ z$A`aVElOpY$xe~Dt-N^|YNv3hINxyIZdCscqipX`L?G0t-L$IxMyh5RW!aelI?nxn z7uof8w&WqG>6W1-ZN#Xu0oxXz0vUZv0iH=@u0k2Jns^|OIs->nYxnWhvd;c~wX*+5 z0qV(M|MvqxJp3@{5gBb4;WTao)&zZk$1)ox7=0Ni<)c zkb{RPw|E!05l=}x0JZ%v`VgLo3xA>o+l6Q7F-&Qg+}z^u|L<-Nl^-pD|8(>-DjV_m zw7OEc@N4k>XMjyzA&U-ARDA&Db7;FPF`8v3HS;JAcd3M0%y^@iAI35>ZhARQ18*0} zupF;HM5=WyNis9#?rz4cB`* zzF;No50+zNnA~wM_p7kz|ue+||t(Sb+cAz2pqJ*s(Dwsy`R4!S&p( zUnw|n3=Pn=b`?TAJTinwP#DP!BRS&VsQ<&y9seW#Yu^~IKw9|!LgaA<`Tc!HIbK1h zQx6V21dXPT1jGdrOZ=zK!4L(}T3=&^qqPhJbiTq^5I_aT0FHC`-JxwTjTr@b4d{3$qBy^0I=8VlSI{Gh4{N{#cC!jNb98jG0LHddlqR>koP%VhcZ$fuKC><`EZ=iaYAm4Yy%KS*5$+q(??bBH|xMt)b!)()8lc)vQ+2-tKazL46xbd zToCtt6?;&4PQ1|Ftl@2t#6QT>uB#HY z^>C1;J`fJR8zx&bgyheI)lA!R=-*0N?B&ZrMW;vU$bF2NX%sHtxR2w30}Mvm9&$o$ zKT`qkehQs0j8M%}5%B*;VwHCts>V)S51)+CN&ZlkABwpk^a_rZ;Vb1D0YxK?f+Ls< z2hJ)~`Na}lQiRU=lOsBnq(g2HQEC05V8#as-D!TN2o3Iv(A2BBs3_{bKZBn9MsVe~ zAUAGVsk8K^GdphUp%Q2{UxWP&tkkZ55SsA8g(fwxwjlo=)=nE0Z<DD7}!UcxtU+5qW8n0zzlz9GbLF*#=U^2VX?mz`b@bF zazRI8Q{;0k-}D-gvJp{gcV^<@yn%B&T*5K2Jhrr5P%^!zv!&Yv!_Endj(T#<-$H1D zmN~`x3hst*Gq=FSTsnZ=ZVXOkg; z8c>J`6?%pXCdSv}i1s`tWDk;}<3qN>@eF9ER1YmRG9HW|UWG9U+Q}TS*8qhF!s9eE z{x3~19(|+WfILnhxe1zu0S!#hi zjCFu7aqc8N6OF;x0_6hCG&sw7q}SW z*)-~P+{)gtkO?c(gpGt;9dLoivchdZ)Aci}+$f6%E)pTdnl#B~f@l<{6SyWFEJ9*4 zCs}Pp$=dZhQ|l+tcj%#`Cya{xfhdW#zLx5U&x4-iV?bPhE%TQYtE8Pavi@ghkZ$cH z%V`9W#BQl&C1qGjDGm^i-IAG|Zd{Z`aCGK4M4NhoUijW1TYQL&7*L((n3=#{o?h9* zeXgQcd>x5u;C^qo3b>B@-AylLVmejXT`b@0`I6k~DJC2ftX7l8@J*Vy*IT&PJGj@i zy+pcj_>+vxSX|s8y7eU8dWH{i!v|_h3|&gsPU7g_NdlT%6aNz3`Ymugg2nOg87XKG zuZ@2&bACzD@e=Ia>`X@8236ex;2hcaKxmKNu9fXjl3(Snyl~rvDZ;dAX)EXia=mTGh5t*>{Gj zcSoqkZl|8i+Z3dIhtl4hPvmz4qr$0(MY?=40MeRiWlC?QxQG)jSpMMndvd8*fOE+> zi#o3&1GW<7N*TB?0Mk4GrdiPE4C|Ws(7kH9aVVq`&3xibi@-wHzcl@u=sgQOM| z&jN;XP9R>?t0TCMOmIc}m(z#2eL>zm0s`~FJR{zGEmeM|u+<9G*ZHM9hy>36B? zP@IDc4ral>g6V$6LbR+v2S-wR<$FqPf^v-q<#Osx)SBlDH3Edo7ldogi`10A4+GnO zO11u3^1pBe?HgCgufr}|BTpKseJv`Wz8LjCCV^UwpqnxerVxt7Y3=KA6d*Tfu`8&? z%?7pJL@JK+CeG)1MyvHM6tdksa^uMva_nDJBInoPj&*^K-)>Zr8!_IhEcq>i@s3zw z(;Jx96v2{qPt(@h2u!j-)tx}h0x3lLYYLf+UzsS{K`}Cz#Wuk6@J*7(AM9T5ia>14 zI`AF~$bncLm`dfN9>l|2ky`$oD3@U5G<>*!0M+b>8@jTxHTAnZ)pt-Sw>?keIj%jP zCr{1;zsJC)lj0<_y}ZUF0ym_QR91T4N@XKHEZ>u*cORNwQf1y;>6iu*Nlkfj`X*1Q z$MPT;0Lh~(teo>bVbXj=U6@+ThOeVu z5D?v_x>)Tx0TFRpjKYby9Mg?Db~R=dR=Ar^`=b@K5#HW)6ccr!d}af6JMSa|{(?mr ze>t@DxqSTmY+8JEt_;V~?h{;&BIer?ZPGN>ik$?QyT3};%v3zRGhxS`hAVc|tU$uL zBdmVDqcF4yK?fELF)@rBa%i^PyD9a4Z<4G#5-^jXwMHV1dz-7;Zq(@nw&LzaZMc=c zEl*J9aRB5;;qVho?u}tV*-UopRy&0UO4RmRqMFa}%r`?|s;3_G3s5hHVdp=N{oPpn zf^Lps{KPPpi2e9^unf|6kWQT6safEE3NJ>Ql%U-`Q5}YhUYI_GIRyx8po)>%l z=uq3cymnu@Hb&T0*$Z}iC$-}`DLgtaLhdhxDfcA2u6(#(?@*w?X3_a!7Ny)~k?m#J z^uLB{-((`GNXSZWkw2TR8D++lk;RUQW>LhK%Rk-HRX0E2J%HQb2xA7PrC93MdoT4;S zlg7lU<4m}=-yR|V;{ef*Mrh)iVD3NvIIRoQ(*J;d6j@Z?g>14gpBUXHUpAE+>6NK{ z3A#i#j^dk7-9{pra*aV7v2CXnUX!lTBhuBFMQJTQcs}E&{2L0G_UCALH8o)QV9{Ic zbp0i|-hSreH|yG}l=OfR<1v%Lx0boY#Vq%o z=)eO^YKpdL(ur`*n@?@%W-CdB!yuN;G>)NbNDBQDNp(X!KsYvV^nMLAGo3|+w(bY2 z;n_(Z)7k(f))NK!IA^M9Oo0M_EF>U-4<5^g6APZY7s(<0jMM$!2|Du|ruIh6h^xcY zG&)<`v)InJqo%Z`=d0-r8!o5ZyQTlS)FG#%<^K!>TLR+o3!`-sWfYGwN%@ghEf3a? zI+kmu zeuUQWCGr2{H!uUe6aQb@@XeS_)7EVOZXwLx7tA9@NyeiMC}PO-oF>oX@jlOQ2P8ET zPxjzdYTQPNW)e=JBg{HO`ewuEmDp|Kbjz6O`y)|-zd}?ylP6yzG2-2E%EXM&@kOGX z$+UK^W&O6lm`AtgQ9e6QV_x9Rv!k>ohxvf!lFNFY8ilC{)y+6Ia*RArvhnXoo#5Ea zag&LshbPFBr^lbC$B(Bco~Or;r)U0V78;(O9aosddNHV`mz(M3DKAluqmHrlqLq}> zi$>*_5;8qap!hPz;_C<;X-9ccAL+QzDx>1>=Xb-fVt9Z|b{f1uGGu4@dC-TVHT-;3 z>10FseQKI!-h_?kd*DS~=zOm$Q6Fiz0n%_gAfa}BfEQ>`fx3JOwcvW7TI&k9{_n7k zH=tsmWxkE61bMv1Ak5^+jHZp@X^z$4$Ar@lN@n=?yWLETgm3lrK;BLQSR0^%u0f(F3+4LG3Vw$<0`hdJ< zIKNMNhQHBkN3X`%^g+<|^fb+(E^MT8x;D*BQ}!z6imTJ9e##Ff{uty+r2@L`2;DZ- z1y_9L_RI&U_XV#joGj@^x-I;HLLH>r*3oP2^xDGr!2D=ic2Hi67EC6zn;x@;!TYBN z9m^@z^zkZC@AVgTBg~B&UM`5y!n8d!Hv!@N=X* zdywCA+{p1jJ)v1qsHzaC^jwXL$s2ZE_?t|aHx+StuVcKI;kgi^h^kKy6V&lZme)$wy9Kl{AFe(-fBoYyktLMt9?*QJ{Y=YEBzSqiJ_Lz|9X zgm7>vM@?VjlC+Zj#YP^@(>culr@}D?i;$%QMN($IX1s;Z>lx_vU3}PoBUE_93SFX| z^9xhQ1DOh+nF&c1n)POfoStCIo=ZSdLh|}{JpUVTMtsboX$OoQQRIeb7p^D&ztLrdW?fG?bUt9O4{y$gY<-?B^c$$479gR`vFTVb zCX;-CKOZoI4~YB}8%;jIo&Vc1JW`8kgMBz4x*^kfh&}$bMM}L660%Dvxqlo{##2ZB zLCg%^gvgS|g7-eelo?^fe; zVzmOE+roXdCh;|h;Gyb zBHG&c&A$~8iqyEAO`%~1snjDR5r-Ga2^7n|2-5J;P;LF1J=!>~oWRpDhk^n3Wf9Af ze)G@M)On>EJ+~OT7O`L(Z+1-)I~umve~|Hhh*BQVIs@3u%$m){^$Od*vb-+@KT3e3i)0MiF2=)`!aSko~x`jRRce4z!8!lI$=h96$|6r$4u zfRMCIc?8;I2qbqcPbZW;#nP|8Xk8W`&{Yf^G`6Qhi zlI40cS#G}RNWQ84DpYL?QO6CZ+7*LtJ{K~P3mLHlt>6-*nv8+@9M>=ooSrVxCfeGA zsR|yK0sgmXl^RS$tT$3JX+7KS(+sdHlww++ulTQRRJI7GGFphbo($1Jf1K+NqHwM# zQD`OG^G|U}7)zy8-eUsqQ8yYM=sF~vKf<0FVxoB&mP4D3;3SfYO0@Nns^+-R1_h7S zzuZcmKZp&-x9GW?K{h$Ruq;Zsp`oe^4%MU(OvP3(XlUbu_}%hQ%?ku4qOIfSUHpB^ zAW7$^SS=T_GD13Tfh9f4gJjmHOlAW%*&fc-g@#P*HDe+|)otaU zb73%A!^!pjFHEK_+%pE-P9}~1J@m*(NTheL*?1VH6OYYFCYFp-aD*l#YSvurnkR;% z_rwR1`P2!3BDi)T?WmvKt^X{9==73Y*q9U`_l<5#u4KTCXs8zX&1qPCoGPzxzK< zS`K5U+sy8lw)x)=^`a6Q%@kKGjVF>}VA^j+x&9u7$#~Ol-t;tY>T<4F?i<2&;sDv~ zPXLr?i#cC>Dokxdb}Uv|6W)Lqa2ex*xoljjsk9wbEH95@HQj`n>AO~>VLRCutMkI{EmMaCexBq z)$jt(zbPuk@B4Ydns0+Nkyd*b=JG!>aXey?PcCvjClh=>D72d?tvA97ApuXwV|@4+ z^uHZJkko?Yews3Se)vb)}M0S!lnDr|GDBs}hA1s|P zm>oBzX!h|SaM~a_d9uyogQxID?z~YDZ`5)X7Ao$rARe&&pQ3XQh^p$M_{z-4%#6$k z36apu)XdDtjQ9+Z$c)Tz1mevwypi{Nkmo>VW=dpcXoO~Fq(-J>M5aVUgoH#yXrzWn zq-11j-_JjecR(2Cp1tom`|Q2;TAI&@2Q%yeX4q|Vw00gQugeEZ;eDr{2F6C_5PcvKybnx7XcrC0!t#lV+};V5peNl8>(nGlO;dT$%((Q zU;>=MKY42hCR%nsqSVaJT=W0P<;+8XI6GN8u;*?^)QgtD-83K70!G30)P}B$g>Erg z^NzrRc_~rb&V%LNPI)GaI~oo53wE#LjXSWrTNhK$Xygyf;AZN1|24dS1@GTPAzkqBWo$eK}Em!>B3nv!PzFAu|K(n1N1E)_u&tygpFS zzjGLU9A?e_7tN|ZOQ7jOb2!&s{O3YmS7evsaG)ANK{x#IqO4qj(GI+*o#)6}JOMjUzv-5IWsL>%M-h785z1!3?vH%Ha}8MCz28iy zJLI*g7O48@WdA%?^*4eI9|f;3V?M8k9D|erbiaZUoXsHI&o7zjs-^6bLlXK^(6Hq` z$~E5%+@_ZnxlYRLR3>MS=8hOXPVlsaA*B;;RM8gN@Ey~&zzFKaL`m&!YQ6V>j;g0l z_+5-9AX**kaE;MCPd0DUh`1$2weQD)4-W!@4>Xsafgz-L8^|>$)WoUG1xk-6z>9y0 z{cR%iRK1JzX*VUbTLF&01HtS)g|cx1a<>Qel5KIY7l8#?OO0;{suj1ukVS@jG?{Jp zqx1|>Xl{9AWZ-T{i0_C_nX)3klabvXI#UHzmJPu<+a;g@((bL@k)!In* z@$2D#Y|oOP0~)a21RO4$j7L!Y<^z;_n&6f(sl7W?vpq=Do(e&pk#@dccnm)bRZS0~ zmS+B0^Jcuf9t@T}Z`gU1n#~i%$fL$<{uE~CW@s6i83$+?otM$7^B$+69V_G#NrI^g z_{}KF^|ADW-T-8m{QiIgXm@{3&y(}jx&ncj5{_A)6sczcLI?bw9iue@YNrKcPItrq zQ}zn|UvYfeP}*tvh0PWiuxe;Hy9q2nI(V-%a9#`(uP3a612R5P8MlM?n^#O|m8HH> z=>3$L`$F2TMi>>%o6hD<5A(rJRbeXr_>M9fjOWFv9p0ckYf^U; zO*+DdcI6L_;t$Q>5Bf}`bJmt#5&A?t?k3>0Baw}>dvR^z|EBWV-hAFiPJe<{VvKzQ zYRq!FmLkXnq_RYEm|S*OsD`EGwiWHV zzrmivBU&_*%<6Q~cL9)6Q3IYaJy$cnq{N5LnCUO7t&f-sVJ#x5JgZPUXBNsk9H`tu z5>cNPsO7ORjrj=V!(_rU#^y1Q(J(ewaAi!JTmYsAfhmR?Pf&&j(rk>SEIfWJJn<|z z1!??$WjaKJlye^-Ge$#VJj7+wAvx=8qT$_Km@f6fUT}a0V^%Nc6_n9kEDC123sTsE zbD+(Bl$a{CvSguZcn*--vnKdo zP3q2oZi9s@VTDQc2v5#p(R1md|1Y*W(X3*# zSaKU!A!FYp^@dt%^i`-;|3#|NOroJIN;4SFmuXsmD?}b!_+VQ=zrRJT|4m|ihTmrL z{hL;5>T#s^oXLKZbFQaCK5AFwwc0Ky=l8N88-)(ZE!38X^+90q0i|1C z)_)(9Hb;=0@Umz#A8y`S+Vsv6|J9$!1eXQ>X9`MZ=O`W)f!QgfD9v@tZ`V?Afg1bA zN?kmMNd~}xaV?+h9@POy}hlrdGD*UakWXV112LM!6bH6fncX zG_4ah^%rULrjWV&b1+3_JaYQ|;Ie`cmQ=1HeW~|85(3j<5}Z%)0p9={LS!;s5Am|| zE75YcSGNd2>-p$=04nx3feU_&G|hYioB*5w$Iwj|A1TLXiVM-y7PjyNya#s3lUcJT zD(;4!yMR=D9SI57aG6hj2*1xi`5NC#Idm@5Y-^Et!?{lpO#0K$N6~p{3%pL>qjd5< zM3lQ=Kw$)1z=JSy7b8sSj_QHMSJq<@AW0-K)k14_ETV*4xv}?QP1PTn>Zg?X0A|gQw zea8!+T1lZ-`_K(l5+WldwS{p(s{0!**o&O+8S{8;yPa6FDp0PDnDd?hbxelbfY(_E zIr}r*I;sD-{RDmbkNjdMclRdsoy{=UdqXJs641+A=~io{m=K?(h3^o6B*W?A2o?A4 z1a&`Kpt=WQ1dcj}VdSijCpC-at6Qeo9WX2xIklRjdei8b9pKv*zERe~D zl@#=?+1{T|_czb!+mvD7TS=k-N-gpLTOOmF{vj37vBh%ufLhIoT&;VUc)ky!veE*T zO@alXpOtVMh{xx{<;GDi>3NItc5;M&m8y3&G@T!Tf@8E@A!&UzP)pW=BYK6dD6XUX z0%hqV{xdwq;^4uZed()u57Ox&&}mT1cYctFW-p9*Aex3ZCMi0RrtwTZKzFpR2C}0q z2SR@YacPEI7i;;w^!X0@N%xcSvgW8=NVN2=w}u#=Q+?H*Ya-7`t(dDek zX1h}P-(9MGkCtizWBdd_!FQBu=WV5MIMKD#iMrVaiwa(|Xsk<#tS*9l%AhP85rP1T zw^|?ZQ!fZd<2T+~GKCb***I|I`twQQUSDT6VKg5YR-!E8?Qr0krBNS zauU9F<@;05QDR*L`6vxYrFWxx@hSZz0|d1XWQ?Q zDO@8!GxgJ@RL!H)%cIl4qZ3*WLB*vgZEiEl?jcZ5)}Y}>#K~}doYpMlxXz>01M;=E zCQ-{wq}qSYRKjjrIKlTUeVGi|*YG}6C9C4KIL-Ku=yyMS6LBp0D|58|(?SiJzlu`U zVY-}pklHu^y!H#UKt2Ilc@ccyJ_>|v5|O;_-wQbP5P*^kY?~iJG4cGZRCOuQbGMR0Of2NllPIQ_0(K+m^wjJbni?J`5u*jAG_T}`SUX{E)P>Yl}L%hb?qh}$Qlgog-O*^@LTtfYJDS+??6>VM9m2{LV@ zBQcuNNGy5Z2asNUoI0I5lzHEj=*W8(jl8QwI}d_@n-0&%1&j873ln+|vHcBTgcqP_ zbq;9#A0=|mq}8gR1X21D*sUO@d=*N*t&mb?l_)T~L>Vtcv6G?;KL&m=+alR)1^?Sv zjq1%5j^HyP3Rz4x{1`12&fs_^(z(7lMzihUX}yu4q9k79OTmR&fKwj{*QRgL26{MK zm#&Su*=n}RQYaiS<8!HUMbU|v~jfPids69rbAfeeaDNG}WGjwWCw#JzE zWh-SbN3C-7ex9Z1u#_O;8w5tHbJT*9%Tgbg|Vjx;cU4FS(RZ#giH9IC&D9SJZjz`UKmxHUnbkp!m+#oiNBv=#Tla3a3YpcO^(J}!&;qk zTejM*sd|lPkG|cYKt}Ve22EucZzHrC3$gS#gSu`(Qk|b`7-NthuMg$;YV?g{%OcQz zK2DkLV4g;=CS*GbbSIqi;u|m>Ujc6agISF$0&o@DVFHw?( zOlWsRC~_yq_~{X<>N5dYMzZe*lZO9;IrE7K86v5!#voSWfNwbyJ-KFU++Otmk~Y!x za1)wMAD~QT$0O5g(Yntqs`#Fsj*Ezk%z~vbo{h&0N#TYPEhs`>a}6|1n@iL)J4!y4 zC91oQ0_LrhV>d>CY@`RkAxjnaQUhwB$#7<}a&G5|0xj8ZL&xJN%5!yu@(tl~^``ze zH;Kw;7^sFnSZsceQ`hsH>yO1~=jbqvpNJCPThM54LCfb5PWA#e>t?zAjyDK^XrwVi zO#`%D{KgZ}&g1E@T9Hn$BL9~pQ)sfhgGf+KTav8(FxTxX4Mxq@qy|T*mt4u?+|D0wr={ixDD$lH6ulG{TaH!HZo%q$l7>VW zE^M4Qnp;!R-c8K!6t3=7CiO#1w`B&!&D$-qyThQ(Pe4TXnm-InWKtNxyl%^cRm;pj zeQBY}EhN4#;?X)EuA!0G>}t4{{umCdqEHS4Mr|;I`CLu^?>#VF8%Q2~4MY0l=>NHa z@2E$~wwJbxqwsvO0iB16Z})NN+&@8Zgkf8Q8Un)-?W;3RFroiLE8a?uwhc9v*2T~7U@=z!Wu9oQDqi4zvp)mqfjY(b(2(wh4rEsUbYV|@wv zUq?Vf{}sZ`4QA*6QkvD`9!IHFq z&1$$LPUWj1B8*R0PeX<_w2?XcjZQdEiWDqhNq3ku{#mqP?Wi@3uqbjrO^(xH(eZ&T zXC?7}yMYFxmBju*ob?#3wWQk^-Um@RIj};VjOZBBZC?jz!6jI0eGroTno1`#H^j^h zyv7Dri%Q-(M28q-CYa>)H2{>K!2cGfLNbH2$6fJ?zdxTl&sX`vXkfXd`r={EHQ#O4 zrRxcsKLa3eKRiB9v(>&x3xyw85XKx{uLRK$S0DO zH<``j5m2uzIKA=IYeGRTVf(4KM`+p(VDr=1jLwi!{R|Js_SM*a8@3-g5wUupI&Ij$ zF``Ia@3T&nvqj$s!`=Ikn&ShGCoS^&%%Z^WEINP>tesJUa3S{ZV_(*5Q0EuIT<{W$ z%9~K<_A{m+8vYJ+y7)#HzA=bzRNxy{EG`Z#E>n-7`*S~3ZJz^L##h#ChH#p-VhB?V z{1LA8BS^*Y6s_q1U7rI__&KAxauA?reQ{}xQQFtkiGP6qEomT5l_*)RnZy~6g~5S^ zp>_lWgyFn-C7qExcAk?^v!>s(BQRg~w*pqQh3P(wWtd3DRD$ve4!0hMo6h5SGJ?Ji z#ASjVP|*uc)GT`-dXs5ZvI1%S!wUI47_0Fy{u&p}0oNSmuToyPN0Jnb2$ZpJh1!0H z?f4njkoCYH_DOxlO7Yp``M zwmy%oM;@YO;+RRUS7AGHiO?>)Y|Z%)Q(@mxR)k;JckV=~g zJdGKg*c(2B$&N>9U^VnSd33T`XstdLD%Ue1impJA(mGVbP4tJ4<%F~b*gYS#CyiqD z(qQF2NBW-Y_+`QJ_6mmkhoUv3&&v#qns3^DLltwXSz~Wu#X1W(=n<-2*+8(e;C*F8 z^V&KwQ0o)GhxQ{T!_Ne#qm06Xo%PM5G#t|KwKbEY<9r$+2F$H<`sI~hw^-7t~u z1`~XsK=R%*L9arS`tK%f!bH|>6dEv5112gbl6JWp*>=q2^M*y`n8~usq9d5e^;bIO z4zb>}Sk#4?%+=UQ13Z4Q4EFbR(}CDyoA$BvX=9q5n8xWS0<<%DGX6xU0@L(intDuA zj%mu^bL+i34n<6!p!gk(vCWLGiARm@>W=;cZ1wFh%V6MFSxj;j%X&@o2`=IF#6 zR)k&?2)$+ydR1Z$6QP$6p;r^8=&3Hz8B8&iNNWO-)^Z}PW=t`{OsHi|s1;49 zKAsf&SIO~*BWCwIMJHysk{PaMh8H&TblggJ{k>-G7>oVq|G5H9cX~ha{neC*ej~$! z*TcyqofzE@!`(E`poLs(<{C7gQBweyQ)-H8)6f86c&4YwbaR@{#72^Q2HEyGi&PVM zq3sFE@_^ugNOztu{?mny=>M2i0^O?wx+88$CgDhAyC)7-W1`s0M6r6Gg!BD0lb)p@ zRYx6D$+^Ea}W5WHr*OhED$8`K#+W#m#brPC+kQ4eLT$bN?LWn7Q2-%kBh7-KR zshMDQ;WuMkX>$*s?T^BiPUB3MNsU`z<{I zB$FLUCgoO;rQ9Ho>KUE+HGN60H$rl`3EyG1X%-DG|cJ9N@4$Bg>)Pq%z153Og z958Frubu+d;gRKMGO>(-9$LN1B)nMzL*t+z8tYp}_99y?z z>jrE+%D#jiAo2j%x&d1|4s+Mo`XsiVk&B(Nbzm{MfVBi3TVTY&)^(V<2{T)lMW`M# zTi&F!>&>Fz9}M%+QTFZ-C^FmYV)IB7q$Nv|hz}X;RNJ<|eDZSuba068!tT_SOliWN>Lb}F*)*Bxhm%YIM zRDI^JvRZ#4Uh2EN_VJ}3#E(-hKhVY>nAZW-9$D~1WWF28aPK6$J>Qany;+=AQMRef zRa!e_lplhC_o5>9AYg=9Q1)Tx^Vr$pPWF#oCM}!62kR%6_<~XlX5NpPcm9uhjN#)F zP1|gd@n*Q0KD4L|+m1VBk>?i{`5c4C8{1lD^9(;k&~O{T(<)B071o1>|#owpbn^hApozuVZCooC(APjGQ2Y8fme1 zUCV6I+hIj-M}IHeQHLQlVW#HO=V6yX(E2VJ^lF+|o-0r#vy>G<525)7fWoU_sCb>! zDO0tdsXE0}4KY>Y>P@m7H)+X;2)Qg|8XZwPWVZG*TNjzFK4xp$B#4EWtuAJ(pV@N% z$0FMY$#5lsy$)4J>ZESlk@HW^uzzX8SKlt8fHA$rQG;=p6D1 z)ezHbUx%hMQ){^pt_G&rXV9o-rnifgtesV?tc}V?KAlW|XQ+h*Y5G#m4|Y(uEuvmP z<4VzEl=dB|Ed(1>w=7oi+l=bi3ZUf{{@#}?O!X{G_5Nl}mx1BQYtM~5)@B-x)k}jQNO1%>jvp)71UGv}oK99FZ?sBsuELzX3ZDZChGixo(TJSuexg*H|GHW}SwH{_I{+(<&e?gAmFJcKRazh1d z;f*|kW~Q=(>6`OxvX(4@7`!+|PLG=jku2)rj@r2EamFB>{0>T`W}JuN#cPk(19gNu zZ(oH*V1hwjuW?@FwPifyB$ac% zxP?fzlD(eMz!VKLMb0--tDC%9-Go-ADL|%tL)DHWdFF@9>V-H3{y=^ZXKKcgF5*xZ ziI5fy#wofF-sr+4=$SZdFrz(e?H(><$%vGO@1v_~5;|ip{LLvG^AZhm_NM-y@B{g{ zHVzfXpxxoR@C`70<$jGZq8z3VzKt91*&-WT$hdFIZ3cMbW(3-Ec zXR_6PohOf%sfhkuq%#>=y7WP=rqPzSfVRAXhuD@Ah<=lafHn~U*+vkUGWCs2eFsy2 zk*SaEY3vK?^1*eVb?p6CB0_BOF=9ekTIL1Pz$L@iKb?CQxFD zYIBK%F-5~QQ@l%bd;?;mnBxHEIFC8@VG4)Fa4mZm{g;0J@vbL#!<4&>MK0lPqMN7K zFy2KZhAEBw6E3I=MnnUV+3*Hp+YAqMXS~YKL!pm}QV^Rv$#gI9;>>4bQX84CoYFXL z&ZF&yv|BA%upvxRQ$ukA_2iZ}ko)=_7M!bG6Nvve5qdequ}AmNOn9Y0PGxPV+e z9|Bwg`kW`DW%@e=CKS|8E8zzFH$`*flVMj7 zUGB6>=fjHdC;AYLdC2S0T5*zOBDnF3dtko!jP5r70y)klm?Zk0aBV7^MwOe3HB@%8S67D1dc1X?9AojPP7@-;FYPQzd2nP?c*MCK2`X^GX*uMt*w_}cd zm}8W?QNvKM_c+FBu3enYAlZ|47dXz3IRh}Q-cTwxJ`Ko(WMd8b51s2sEHZjNDpc&Y zOf^78&>Bw)hY^{@sX7z>AHw*eNo?4qB{aU1xOl{fTTy-6y=`aA&NT${^iqQG^ zYAyR4x<#hAj4AGAiZvw@unN%2=V8Wq3K*U#LFYMWw7#6K8m776O`qxXE^`U_A= ze1ZztW1+I*b+h?#&`GXTrZ}g!^&uKL2n6daoR0(0>F~O&KZNRLh!*@2qMkqT@&o+x zH*f;8jBdDyMAK+6UANLqa+cMNM=+AiSg9LOt@}y2GwlX{0PeBSF8&F?Wzb(P3^!ie zzYCPJGEnBON`sa#oap&ok8MgPq6Jxqs__MsZN6dKe1)Db%u<@0C6|5l2z5{~|D4WO zOcVPsH62XTf@wN1&72oOv~^SSc@hX8rYXfVofNbD+%pw8lksGxMvkSJl}Kuyo7nR_ z_1_-sb{MGx2`!fd^mZ3we1y~4`)aEY9f__;@^va=Gpyum8SY%O^%SzRS&&TlV; z(aDxcJcrbF3*4NHg70CeD&jC&O16t@1J_OqYj!aof@@9*HK3O`)!apiei1nE8Kl(S zWuFLuH# z)dtFCQkC61IxaSPxW{4v-1iO29jg{bL{bp94(U+_SLK9RXz0K@OKG z+ryLv&xikQ6w@`HNQNm(d5_hqDM=X*QZJxT5ExwudV}!C6M=0Yl)DC`%(zrbO zx*?;Ob0g_oCn6yhtKpqV3ZAnH_%*zsm}&?!)MKj9<7PbnM*|)0Y!1hvQ{C>XiXQN~ zRdlg#Pf-`wdWSTvdzq&4E8zNCU@tjKDZV&Mu?OjXJW4nfPNnS880}aUqcuMRWW_{N z{ppnWg+RoOgf=EBz(jMFQ?m6;0KNzE0cY>T+3n4l#9`R&GIkrY*QEImA)|QV8c39k z2zJ|r-L_!25mPzs)`D!ncB5}2^Yt-jJ*N_uSz>{sPd30=mM)F149*}My(T4YrK^?;eL}mdYa<%4K zMSn-alr%-Z4Ozi!k>qk{rTifeh7|Pt28-Zvrw6o-KA<1z?P;PHI2vr%d`j)fWX5_{ z%k3Xf)tJPBN!l@q?q%P2oUM7R83yZbDJ0Dy^@e@Au}?kr$?}J0;}rnM*)*ST!O865 zZ@@ean5P}{=xfsN-G~U^M0)lq1d0!lyx2za0@G~3G_9CsNk97trm4U*moQB;rkUUx zC8rySjPKxBj#)CyJ0nz^4#Z*{4F&hX-*|ytaLA~nLJ$vxTakx3IQ$*1aW`{*>rX-@ zCz*zG@b&$sEl&h!Py7oGxJGKnzp!+V<~Zib zO2`xCSZ5{~{0`?fYZ8SuR41oUwZ?7^4HnJrw5aqypi_^KEKVlu# hZa21D@+Ojc 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

FK9i#(U&4&I-3S>KJg+IBUi~w)?O`OD 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�z@m?$PXD#^NI>WX5lDr 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

H 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±M4E??)=eft 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
j*ScmkeBibYDW?s`o>#w0|A9 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]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