This file is indexed.

/usr/share/gnudatalanguage/astrolib/vsym.pro is in gdl-astrolib 2018.02.16+dfsg-1.

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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
PRO VSYM, Nvert, STAR=star, SKELETON=skeleton, POLYGON=polygon, $
    FILL=fill, ROT=rot, THICK=thick

;+
; NAME:
;       VSYM
;
; PURPOSE:
;       Create "Mongo"-like polygonal plot symbols
; EXPLANATION:
;       This procedure generates a subset of Mongo-like plot symbols.
;       The symbols are the rotationally symmetric ones that have
;       a specified number of vertices and are either open or filled.
;       (The half-filled symbols are not included.)     After defining the
;       plot symbol with VSYM, make the call to PLOT (or PLOTS or OPLOT) with 
;       PSYM=8.
;
; CATEGORY:
;       Graphics
;
; CALLING SEQUENCE:
;       VSYM, Nvert
;
; INPUT POSITIONAL PARAMETERS:
;       Nvert:     Number of vertices in plot symbol.  Maximum value
;                  used is 24.
;
; INPUT KEYWORD PARAMETERS:
;       STAR:      Set this flag to get a star.  E.g., 
;                  vsym, 5,/star gets you a pentagram.
;       SKELETON:  Set this flag to get an asterisk-like symbol, where
;                  the center is connected to each vertex.  E.g.,
;                  vsym, 4, /skel gets you an X.
;       POLYGON:   Set this flag to get a regular polygon.  This is
;                  the default symbol type.
;       FILL:      Set this flag to get filled symbol.  Default=open
;       ROT:       Rotation of symbol about center, in degrees.
;                  E.g., vsym, 4, rot=45 gets you a diamond, whereas
;                  vsym, 4 gets you a square.
;       THICK:     Line thickness of symbol.  Default=!P.thick
;
; MODIFICATION HISTORY:
;       Written by:     R. S. Hill, RITSS, 2 Oct 98
;-

On_error, 0

IF n_elements(nvert) LT 1 THEN nvert=4

IF nvert GT 24 THEN $
    message,/info,'More than 24 vertices requested; 24 used'

nv = nvert < 24
vangle = (nv-2.)/nv*180.

st = keyword_set(star)
sk = keyword_set(skeleton)
po = keyword_set(polygon)
fi = keyword_set(fill)
rt = keyword_set(rot)

IF n_elements(thick) LT 1 THEN thick=!P.thick

rot_zero = -0.5*vangle
if rt then rot_zero = rot_zero + 180./nvert

IF st + sk + po GT 1 THEN message, 'More than one symbol type specified'
IF st + sk + po EQ 0 THEN po=1

angles = indgen(nv+1)/float(nv) * 2 * !pi + rot_zero/180.0*!pi
x = cos(angles) & y = sin(angles)

inv2 = indgen(nv+1)*2
inv2_1 = indgen(nv)*2 + 1

IF po THEN BEGIN
    usersym, x, y, fill=fi, thick=thick
ENDIF ELSE IF sk THEN BEGIN
    xx = fltarr(2*nv+1) & yy = xx
    xx[inv2] = x
    yy[inv2] = y 
    usersym, xx, yy, thick=thick
ENDIF ELSE IF st THEN BEGIN
    rot2 = rot_zero + 180./nv
    inner_angles = $
        indgen(nv)/float(nv) * 2 * !pi + rot2/180.0*!pi
    inner_x = cos(inner_angles)*0.32
    inner_y = sin(inner_angles)*0.32
    xx = fltarr(2*nv+1) & yy = xx
    xx[inv2] = x
    xx[inv2_1] = inner_x
    yy[inv2] = y
    yy[inv2_1] = inner_y    
    usersym, xx, yy, fill=fi, thick=thick
ENDIF

RETURN
END