This file is indexed.

/usr/share/axiom-20170501/src/algebra/TUBE.spad is in axiom-source 20170501-3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
)abbrev domain TUBE TubePlot
++ Author: Clifton J. Williamson
++ Date Created: Bastille Day 1989
++ Date Last Updated: 5 June 1990
++ Description: 
++ Package for constructing tubes around 3-dimensional parametric curves.
++ Domain of tubes around 3-dimensional parametric curves.

TubePlot(Curve) : SIG == CODE where
  Curve : PlottableSpaceCurveCategory

  B   ==> Boolean
  L   ==> List
  Pt  ==> Point DoubleFloat
 
  SIG ==> with

    getCurve : % -> Curve
      ++ getCurve(t) returns the \spadtype{PlottableSpaceCurveCategory}
      ++ representing the parametric curve of the given tube plot t.

    listLoops : % -> L L Pt
      ++ listLoops(t) returns the list of lists of points, or the 'loops',
      ++ of the given tube plot t.

    closed? : % -> B
      ++ closed?(t) tests whether the given tube plot t is closed. 

    open? : % -> B
      ++ open?(t) tests whether the given tube plot t is open. 

    setClosed : (%,B) -> B
      ++ setClosed(t,b) declares the given tube plot t to be closed if
      ++ b is true, or if b is false, t is set to be open.

    tube : (Curve,L L Pt,B) -> %
      ++ tube(c,ll,b) creates a tube of the domain \spadtype{TubePlot} from a
      ++ space curve c of the category \spadtype{PlottableSpaceCurveCategory},
      ++ a list of lists of points (loops) ll and a boolean b which if
      ++ true indicates a closed tube, or if false an open tube.
 
  CODE ==> add
 
    Rep := Record(parCurve:Curve,loops:L L Pt,closedTube?:B)
 
    getCurve plot == plot.parCurve
 
    listLoops plot == plot.loops
 
    closed? plot == plot.closedTube?

    open? plot   == not plot.closedTube?
 
    setClosed(plot,flag) == plot.closedTube? := flag
 
    tube(curve,ll,b) == [curve,ll,b]