facebookresearch / frankmocap
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 24% duplication:
    • 7,428 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 1,824 duplicated lines
  • 400 duplicates
system24% (1,824 lines)
Duplication per Extension
py24% (1,824 lines)
Duplication per Component (primary)
renderer32% (1,511 lines)
mocap_utils13% (129 lines)
bodymocap/utils21% (73 lines)
handmocap/hand_modules14% (60 lines)
bodymocap/models27% (51 lines)
renderer/shaders0% (0 lines)
integration0% (0 lines)
bodymocap0% (0 lines)
handmocap0% (0 lines)

Duplication Between Components (50+ lines)

G bodymocap/utils bodymocap/utils mocap_utils mocap_utils bodymocap/utils--mocap_utils 146 bodymocap/models bodymocap/models handmocap/hand_modules handmocap/hand_modules bodymocap/models--handmocap/hand_modules 111

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 400 duplicates...
Size#FoldersFilesLinesCode
49 x 2 renderer
renderer
viewer2D.py
viewer2D.py
405:476 (5%)
460:531 (5%)
view
38 x 2 bodymocap/utils
mocap_utils
imutils.py
coordconv.py
228:320 (16%)
83:158 (34%)
view
34 x 2 renderer
renderer
viewer2D.py
viewer2D.py
1037:1098 (4%)
1145:1206 (4%)
view
33 x 2 renderer
renderer
glViewer.py
glViewer.py
2139:2181 (1%)
2212:2254 (1%)
view
32 x 2 renderer
renderer
viewer2D.py
viewer2D.py
687:730 (3%)
734:777 (3%)
view
32 x 2 renderer
renderer
glViewer.py
glViewer.py
2214:2254 (1%)
2282:2322 (1%)
view
32 x 2 renderer
renderer
glViewer.py
glViewer.py
2141:2181 (1%)
2282:2322 (1%)
view
30 x 2 renderer
renderer
glViewer.py
glViewer.py
2689:2726 (1%)
2767:2804 (1%)
view
26 x 2 renderer
renderer
glViewer.py
glViewer.py
2881:2914 (1%)
2940:2973 (1%)
view
26 x 2 renderer
renderer
glRenderer.py
glViewer.py
420:455 (4%)
1081:1116 (1%)
view
25 x 2 renderer
renderer
glRenderer.py
glViewer.py
345:387 (4%)
1008:1050 (<1%)
view
24 x 2 renderer
renderer
viewer2D.py
viewer2D.py
804:829 (2%)
848:873 (2%)
view
23 x 2 renderer
renderer
screen_free_visualizer.py
visualizer.py
70:104 (34%)
79:113 (14%)
view
22 x 2 renderer
renderer
glViewer.py
glViewer.py
2086:2112 (<1%)
2155:2181 (<1%)
view
22 x 2 renderer
renderer
glViewer.py
glViewer.py
2086:2112 (<1%)
2228:2254 (<1%)
view
22 x 2 renderer
renderer
viewer2D.py
viewer2D.py
910:934 (2%)
1008:1032 (2%)
view
22 x 2 renderer
renderer
glViewer.py
glViewer.py
2086:2112 (<1%)
2296:2322 (<1%)
view
21 x 2 renderer
renderer
viewer2D.py
viewer2D.py
654:675 (2%)
848:869 (2%)
view
21 x 2 renderer
renderer
viewer2D.py
viewer2D.py
654:675 (2%)
804:825 (2%)
view
21 x 2 renderer
renderer
glRenderer.py
glViewer.py
546:571 (3%)
385:411 (<1%)
view
Duplicated Units
The list of top 8 duplicated units.
See data for all 8 unit duplicates...
Size#FoldersFilesLinesCode
37 x 2 renderer
renderer
viewer2D.py
viewer2D.py
0:0 
0:0 
view
35 x 2 renderer
renderer
viewer2D.py
viewer2D.py
0:0 
0:0 
view
14 x 2 bodymocap/models
handmocap/hand_modules
hmr.py
resnet.py
0:0 
0:0 
view
19 x 2 mocap_utils
bodymocap/utils
coordconv.py
imutils.py
0:0 
0:0 
view
13 x 2 bodymocap/models
handmocap/hand_modules
hmr.py
resnet.py
0:0 
0:0 
view
21 x 2 mocap_utils
bodymocap/utils
coordconv.py
imutils.py
0:0 
0:0 
view
9 x 2 renderer
renderer
screen_free_visualizer.py
visualizer.py
0:0 
0:0 
view
11 x 2 mocap_utils
bodymocap/utils
coordconv.py
imutils.py
0:0 
0:0 
view