Dear Luca,
Thanks for Your reply. Below is my code with which I try to extract the
end points, but somehow it finds that all points (from attached network
from vmtknetworkextraction) are end points of vtkPolyLines. As You
advice, I call BuildLinks and GetPointCells. What am I missing here? Do
I need to convert vtkPolyLine to vtkLines? If so, how would I have to do
that?
Many thanks for Your help
Roman
#include <vtkXMLPolyDataReader.h>//for vtp-files (cannot contain 3D cells?)
//#include <vtkPolyDataReader.h>//for vtk-files (cannot contain 3D cells?)
#include <vtkPolyData.h>
#include <vtkCell.h>
#include <vtkCellType.h>
#include <vtkIdList.h>
int main(int argc, char* argv[]){
if( argc <= 1 )
{
std::cerr << "Usage: " << argv[0];
std::cerr << " inputGraph";
//std::cerr << " outputPoints";
std::cerr << std::endl;
return EXIT_FAILURE;
}
if(!(strcasestr(argv[1],".vtp"))) {
std::cout << "The input should end with .vtp" << std::endl;
return -1;
}
//vtkPolyDataReader *reader = vtkPolyDataReader::New(); //*.vtk
vtkXMLPolyDataReader *reader = vtkXMLPolyDataReader::New(); //*.vtp
reader->SetFileName(argv[1]);
reader->Update();
vtkPolyData *mesh= reader->GetOutput();
mesh->BuildLinks(); //for inverse topological queries
vtkIdType N= mesh->GetNumberOfCells();
std::cerr << "Mesh contains " << N << " cells and " <<
mesh->GetNumberOfPoints() << " points."<< std::endl;
double x[3];
vtkIdType n= mesh->GetNumberOfPoints();
//vtkIdType n= mesh->GetNumberOfVerts();
for (vtkIdType j= 0; j < n; j++){
vtkIdList *cellIdList= vtkIdList::New();
mesh->GetPointCells(j, cellIdList); //obtain cells using a particular
point. Make sure that routine BuildLinks() has been called.
vtkIdType m= cellIdList->GetNumberOfIds();
//for (vtkIdType k= 0; k < m; k++){
if (m < 1)
std::cerr << "Point " << j << " is not part of any cell!" <<
std::endl;
else if (m == 1){
//mesh->GetPoint(cell->GetPointId(j), x);
mesh->GetPoint(j, x);
//std::cout << x[0] << x[1] << x[2] << std::endl;
printf("%d\t%f\t%f\t%f\n", j, x[0], x[1], x[2]);
std::cerr << "Point " << j << " is just part of cell " <<
cellIdList->GetId(0) << " which is of type " <<
vtkCellTypes::GetClassNameFromTypeId(mesh->GetCell(cellIdList->GetId(0))->GetCellType())
<< std::endl; // VTK_LINE || VTK_POLY_LINE) //from
VTK/Filtering/vtkCellType.h, VTK_POLY_LINE: set of 1D lines
}
else
std::cerr << "Point " << j << " is part of more than one cell!" <<
std::endl;
}
return EXIT_SUCCESS;
}
On 05/09/12 15:33, Luca Antiga wrote:
Hi Roman,
in fact it does it. If you are acquainted with VTK then it is easy: just
take the network output, cycle through all the cells and for each cell
extract the coordinate of the endpoint if that point is not used by any
other cell (you have to call GetPointCells, defined in the vtkPolyData
class; don't forget to call BuildLinks beforehand so that you can
make this kind of inverse topological queries).
Best,
Luca
On Sep 5, 2012, at 10:12 AM, Dr. Roman Grothausmann wrote:
Dear Luca,
Thanks for Your reply. I'll give it a try. From my understanding
vtkFeatureEdges does already this kind of thing, just for edges not for
points.
Thanks for Your help
Roman
On 03/09/12 11:39, Luca Antiga wrote:
Dear Roman,
thanks for your appreciation of vmtk, it's good to have you onboard.
It is indeed possible to use manually specified endpoints for vmtkcenterlines,
but there's some glue code that needs to be written in-between.
vmtknetworkextraction outputs a polydata dataset composed of interconnected
lines, whose endpoints are the coordinates you're interested in. In order to
extract endpoints from the Network you should look for cells that have either
one of the Topology array values equal to -1 and extract the corresponding
coordinates.
Once you have the coordinates, you can specify them even at the command
line using vmtkcenterlines using -seedselector pointlist -seeds x y z -targets
x0 y0 z0 x1 y1 z1 ...
Let me know if you need support/advice for the extraction of the endpoints. In
fact this could be a nice addition to vmtk.
Best,
Luca
On Sep 3, 2012, at 11:26 AM, Dr. Roman Grothausmann wrote:
Dear mailing list members,
vmtk is really cool. I'm just about getting to know its features
especially those for centre line extraction.
I found this email from Luca:
http://sourceforge.net/mailarchive/message.php?msg_id=29119553 to use
vmtknetworkextraction for this purpose.
Now I wonder, if it is possible to use the endpoints of the result of
vmtknetworkextraction as the endpoints for vmtkcenterlines?
Or is there a way to save the manually selected start and end points of
vmtkcenterlines to use these when experimenting with other options of
vmtkcenterlines?
Many thanks for vmtk and for any help or hints.
Roman
--
Dr. Roman Grothausmann
Tomographie und Digitale Bildverarbeitung
Tomography and Digital Image Analysis
Institut für Funktionelle und Angewandte Anatomie, OE 4120
Medizinische Hochschule Hannover
Carl-Neuberg-Str. 1
30625 Hannover
Tel. +49 511 532-9574
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
vmtk-users mailing list
vmtk-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vmtk-users
--
Dr. Roman Grothausmann
Tomographie und Digitale Bildverarbeitung
Tomography and Digital Image Analysis
Institut für Funktionelle und Angewandte Anatomie, OE 4120
Medizinische Hochschule Hannover
Carl-Neuberg-Str. 1
30625 Hannover
Tel. +49 511 532-9574
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
vmtk-users mailing list
vmtk-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vmtk-users
--
Dr. Roman Grothausmann
Tomographie und Digitale Bildverarbeitung
Tomography and Digital Image Analysis
Institut für Funktionelle und Angewandte Anatomie, OE 4120
Medizinische Hochschule Hannover
Carl-Neuberg-Str. 1
30625 Hannover
Tel. +49 511 532-9574
<?xml version="1.0"?>
<VTKFile type="PolyData" version="0.1" byte_order="LittleEndian" compressor="vtkZLibDataCompressor">
<PolyData>
<Piece NumberOfPoints="317" NumberOfVerts="0" NumberOfLines="68" NumberOfStrips="0" NumberOfPolys="0" >
<PointData>
<DataArray type="Float64" Name="Radius" format="appended" RangeMin="0" RangeMax="9.6867031594" offset="0" />
</PointData>
<CellData>
<DataArray type="Int64" Name="Topology" NumberOfComponents="2" format="appended" RangeMin="1" RangeMax="64.350602173" offset="2336" />
</CellData>
<Points>
<DataArray type="Float32" Name="Points" NumberOfComponents="3" format="appended" RangeMin="92.762125182" RangeMax="192.17313621" offset="2632" />
</Points>
<Verts>
<DataArray type="Int64" Name="connectivity" format="appended" RangeMin="" RangeMax="" offset="6420" />
<DataArray type="Int64" Name="offsets" format="appended" RangeMin="" RangeMax="" offset="6436" />
</Verts>
<Lines>
<DataArray type="Int64" Name="connectivity" format="appended" RangeMin="" RangeMax="" offset="6452" />
<DataArray type="Int64" Name="offsets" format="appended" RangeMin="" RangeMax="" offset="7200" />
</Lines>
<Strips>
<DataArray type="Int64" Name="connectivity" format="appended" RangeMin="" RangeMax="" offset="7440" />
<DataArray type="Int64" Name="offsets" format="appended" RangeMin="" RangeMax="" offset="7456" />
</Strips>
<Polys>
<DataArray type="Int64" Name="connectivity" format="appended" RangeMin="" RangeMax="" offset="7472" />
<DataArray type="Int64" Name="offsets" format="appended" RangeMin="" RangeMax="" offset="7488" />
</Polys>
</Piece>
</PolyData>
<AppendedData encoding="base64">
_AQAAAACAAADoCQAAxQYAAA==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AQAAAACAAABABAAAygAAAA==eJyFksdywkAQBUkWGERGNg4CHIgG///fwcGvOfTFe3nVMz2rKs02G3+nlWwm26p3xA/yPsSF5q45cFf39MT4eH15g+SjfDNzpeboD8OjJDxWfSKeyuM+vJnm6DM3l7cQ4+NV8uib8Z6VL8mlfOqv8t5Ux4ff5dVifLyV5ujXYrx1cqN+8P5OeU/svZDP+/lM8h7Ys99D+Q9zvlL/Tm7l7cLs70nMHirNcfapH5JH3YNnZt8nfecnyf8+J/2fYe67hH/l0b8ByCjnRQ==AQAAAACAAADcDgAABwsAAA==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
</AppendedData>
</VTKFile>
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and
threat landscape has changed and how IT managers can respond. Discussions
will include endpoint security, mobile security and the latest in malware
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
vmtk-users mailing list
vmtk-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/vmtk-users