#ifndef __VECTORLIST_H__ #define __VECTORLIST_H__ #ifdef __cplusplus extern "C" { #endif # include "util.h" # include "pdb.h" # include "NRVects.h" # define US_PAPER_POINTS_WIDTH 612 /* 8.5 * 72 = 612 */ # define US_PAPER_POINTS_LENGTH 792 /* 11 * 72 = 792 */ # define MAX_LINEWIDTH 5.0 # define MIN_LINEWIDTH 1.0 typedef double AllocateNRVector3[4] ; typedef double *PassNRVector3 ; typedef struct { double ** NVects ; int Nmax ; int Nnow ; int * LineMove ; char name[BUFSIZ] ; } VectorList ; void f_O_gdl_Vector (FILE * ff,double *v, int LineMove) ; void AIDrawCAofSelection(file_records * f) ; void AISimplePrintVectors(VectorList * V) ; double CalcLineWidth(int flag, double ScaleFactor, double BaseLine, double z) ; void AIPrint1Line (double *u, double *v, double LineWidth) ; double * DrawingLimits(int flag,double *u) ; void AIPrint1Vector (double *v, int LineMove) ; void VectorListKludgeArrow (VectorList *V, double * v, double *u) ; double ** VectorList3dCross (VectorList *V, double * v, double L) ; void O_gdl_PrintVectorList (VectorList *V) ; int AddToVectorList (VectorList * V, double v1, double v2, double v3, int LineMove) ; VectorList * AllocateVectorList (int N, char *name) ; void O_gdl_Vector (double *v, int LineMove) ; void MolscriptDrawLine(NRVectP v1, NRVectP v2) ; /* Already defined in nrvect.c */ # define DOT_PROD(u,v) (u[1]*v[1] + u[2]*v[2] + u[3]*v[3]) # define LENGTH(u) (sqrt(DOT_PROD(u,u))) #ifdef __cplusplus } #endif #endif /* !__VECTORLIST_H__ */