package swcparts;
import java.math.*;
public class SwcLine
{
static private int totalLines; //the same for all instances of SwcLine class
private int lineNumber;
private int origionalLineNumber;
private int lineType;
private double lineX;
private double lineY;
private double lineZ;
private double lineRad;
private int lineLink;
private int numDaughters;
private int lineTreeNum;
private int lineBranchNum;
public void setLine(int lnum, int ltype, double lx, double ly, double lz, double lRad, int llink)
{
lineNumber = lnum;
lineType = ltype;
lineX = lx;
lineY = ly;
lineZ = lz;
lineRad = lRad;
lineLink = llink;
origionalLineNumber = lnum;
}
public void setLine(int lnum,int olnum, int ltype, double lx, double ly, double lz, double lRad, int llink)
{
lineNumber = lnum;
origionalLineNumber = olnum;
lineType = ltype;
lineX = lx;
lineY = ly;
lineZ = lz;
lineRad = lRad;
lineLink = llink;
}
static public void setTotalLines(int ltnum)
{
totalLines = ltnum;
}
public void setNumDaughters(int nd)
{
numDaughters = nd;
}
public void setLineTreeNum(int ltn)
{
lineTreeNum = ltn;
}
public void setLineBranchNum(int lbn)
{
lineBranchNum = lbn;
}
public void setLineNum(int ln)
{
lineNumber = ln;
}
public void setLineType(int lt)
{
lineType = lt;
}
public void setLineX(double lx)
{
lineX = lx;
}
public void setLineY(double ly)
{
lineY = ly;
}
public void setLineZ(double lz)
{
lineZ = lz;
}
public void setLineRadius(double ld)
{
lineRad = ld;
}
public void setLineLink(int ll)
{
lineLink = ll;
}
public void setOrigionalLineNum(int oln)
{
origionalLineNumber = oln;
}
static public int getTotalLines()
{
return totalLines;
}
public int getLineNumber()
{
return lineNumber;
}
public int getLineType()
{
return lineType;
}
public double getLineX()
{
return lineX;
}
public double getLineY()
{
return lineY;
}
public double getLineZ()
{
return lineZ;
}
public double getLineRad()
{
return lineRad;
}
public int getLineLink()
{
return lineLink;
}
public int getNumDaughters()
{
return numDaughters;
}
public int getLineTreeNum()
{
return lineTreeNum;
}
public int getLineBranchNum()
{
return lineBranchNum;
}
public int getOrigionalLineNum()
{
return origionalLineNumber;
}
public double getDistance(SwcLine l1)
{
return Math.sqrt(((this.lineX - l1.lineX)*(this.lineX - l1.lineX)) + ((this.lineY - l1.lineY)*(this.lineY - l1.lineY)) + ((this.lineZ - l1.lineZ)*(this.lineZ - l1.lineZ)));
}
}