Something like this may work for you:
# Setup your boolean property map, which should give you an empty array of zeros
v_mask = g.new_vertex_property('bool')
# Assign values to the mask property map array from another property map array
# In this case where a certain property map is <= to a value
# Note use of the .a to directly access the arrays -> shortcut for get_array() method
v_mask.a = v_propMap.a <= val
# Then activate your filter
g.set_vertex_filter(v_mask)
# Remember to de-activate prior to running other operations on the whole graph
g.set_vertex_filter(None)
# Remember to clear or recreate your mask prior to new assignments
# This is what I use -> requires 'import numpy'
v_mask.a = numpy.zeros_like(v_mask.a)
There may be other methods that work better, but this has so far worked nicely for me.
Gareth
With filters, you can either directly select a boolean property or apply a function. For example, if you have a property representing the temperature of nodes, you can select all nodes above a specific value and so on.
Giuseppe
_______________________________________________
graph-tool mailing list
graph-tool@skewed.de
http://lists.skewed.de/mailman/listinfo/graph-tool