View Issue Details

IDProjectCategoryView StatusLast Update
0029575Open CASCADEOCCT:Codingpublic2019-07-10 18:46
ReporternbvAssigned Tonbv 
PrioritynormalSeverityintegration request 
Status closedResolutionwon't fix 
Summary0029575: Remove unuseful "template tools"
DescriptionSome classes like

BRepBlend_HCurve2dTool
Contap_HCurve2dTool
IntPatch_HCurve2dTool
BRepBlend_HCurveTool
HLRBRep_BSurfaceTool

and maybe other are currently not used in OCCT and shall be deleted. They was created in order to provide "template-like" functionality.

Other tools (e.g. Extrema_CurveTool), which are still used should be replaced with templates and (after that) be removed.
TagsNo tags attached.
Test case number

Activities

abv

2018-03-20 06:00

manager   ~0074686

Nikolai, can you explain why you wrote that classes like BRepBlend_HCurve2dTool are not used? That particular one is used in multiple places, e.g. in BRepBlend_HCurve2dTool.cxx. The same with others.

nbv

2018-03-20 09:43

developer   ~0074688

Andrey,

In my opinion, some such classes are excess. I do not make detailed analyze but they can be replaced with the correspond method of argument. E.g.

IntPatch_HCurve2dTool::Value(CURVE,X(3)))

can be replaced with

curve->Value(...)

where "curve" is Adaptor2d_HCurve2d. ETC.


Moreover, if they cannot be replaced then many methods of these classes are not used currently (e.g. IntPatch_HCurve2dTool::IsPeriodic()).

Additionally, please see bug description: "Other tools (e.g. Extrema_CurveTool), which are still used should be replaced with templates and (after that) be removed."

abv

2018-03-21 16:14

manager   ~0074744

I have nothing against eliminating these classes if they are do not provide any added value, just please use accurate wording in bug descriptions (and elsewhere). If you write that something (class in that case) is not used, this should mean that it is not used, literally.

Issue History

Date Modified Username Field Change
2018-03-14 17:43 nbv New Issue
2018-03-14 17:43 nbv Assigned To => msv
2018-03-20 06:00 abv Note Added: 0074686
2018-03-20 06:00 abv Assigned To msv => nbv
2018-03-20 06:00 abv Status new => feedback
2018-03-20 09:43 nbv Note Added: 0074688
2018-03-20 09:43 nbv Assigned To nbv => abv
2018-03-21 16:14 abv Note Added: 0074744
2018-03-21 16:14 abv Assigned To abv => nbv
2018-03-21 16:14 abv Status feedback => assigned
2019-07-10 18:46 abv Status assigned => closed
2019-07-10 18:46 abv Resolution open => won't fix
2019-07-10 18:46 abv Target Version 7.4.0 =>