︙ | | | ︙ | |
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
# Copyright (c) P.J.Gawthrop, 1996.
###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
## Revision 1.38 2001/03/23 14:57:31 gawthrop
## Now puts space after header fields + writes _port.fig
##
## Revision 1.37 2000/09/14 08:43:32 peterg
## Add additional directional informatiuon to rbonds:
## cols 7-8 Arrow end directional bond
## cols 9-10 Arrow end directional bond
|
>
>
>
|
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
# Copyright (c) P.J.Gawthrop, 1996.
###############################################################
## Version control history
###############################################################
## $Id$
## $Log$
## Revision 1.39 2001/05/09 08:50:02 gawthrop
## Uses _art.fig to transmit the art work to the cbg.fig rep.
##
## Revision 1.38 2001/03/23 14:57:31 gawthrop
## Now puts space after header fields + writes _port.fig
##
## Revision 1.37 2000/09/14 08:43:32 peterg
## Add additional directional informatiuon to rbonds:
## cols 7-8 Arrow end directional bond
## cols 9-10 Arrow end directional bond
|
︙ | | | ︙ | |
238
239
240
241
242
243
244
245
246
247
248
249
250
251
|
# note that there may be more than one component per label
if ((match($1,comment_regexp)==0)&&(NF>0))
{
i_label++;
name = $1;
CR = $2;
args = $3;
label[i_label,1] = name;
label[i_label,2] = CR;
label[i_label,3] = args;
}
}
function fig_info() {
|
>
|
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
|
# note that there may be more than one component per label
if ((match($1,comment_regexp)==0)&&(NF>0))
{
i_label++;
name = $1;
CR = $2;
args = $3;
label[i_label,1] = name;
label[i_label,2] = CR;
label[i_label,3] = args;
}
}
function fig_info() {
|
︙ | | | ︙ | |
264
265
266
267
268
269
270
271
272
273
274
275
276
277
|
# The depth is field 4 (for strings)
depth = modulo10($4);
# It is terminated by \001 - so delete this termination
str = substr(str,1,length(str)-4);
# A component string contains only alphanumeric _ and :
isa_plain_component = match(str, component_regexp)==0;
# It must also be specified at depth 0 (modulo 10)
isa_plain_component = isa_plain_component && (depth==0);
# A port is a string within []
isa_port = (match(str, port_regexp)>0)
|
>
>
>
|
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
|
# The depth is field 4 (for strings)
depth = modulo10($4);
# It is terminated by \001 - so delete this termination
str = substr(str,1,length(str)-4);
# Zap maths
gsub(/[()-+*/]/,"",str);
# A component string contains only alphanumeric _ and :
isa_plain_component = match(str, component_regexp)==0;
# It must also be specified at depth 0 (modulo 10)
isa_plain_component = isa_plain_component && (depth==0);
# A port is a string within []
isa_port = (match(str, port_regexp)>0)
|
︙ | | | ︙ | |
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
|
if (named_component) {
split(str,a,delimiter);
type = a[1];
name = a[2];
# Check if name is in label file and if used already
found = 0; name_used = 0;
for (i=1; i<=i_label; i++) {
lname = label[i,1];
if ( lname==name ) {
found = 1;
if (name in used) {
name_used = 1;
CR = label[i,2];
args = label[i,3];
}
|
|
|
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
|
if (named_component) {
split(str,a,delimiter);
type = a[1];
name = a[2];
# Check if name is in label file and if used already
found = 0; name_used = 0;
for (i=1; i<=i_label; i++) {
lname = label[i,1];
if ( lname==name ) {
found = 1;
if (name in used) {
name_used = 1;
CR = label[i,2];
args = label[i,3];
}
|
︙ | | | ︙ | |