Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

Is it possible (without writing Python code - sorry I'm not a developer) to create a point layer from a polygon layer but ensure the point is within the polygon? The ftools centroid tool is cool but some centroids are created outside the polygon (i.e. irregular polygon). In ArcGIS there is a "Feature to Point" tool similar to the ftools 'polygon centroids' tool but has a checkbox to force the point to be within the polygon.

share|improve this question
add comment

1 Answer 1

If you do not care about whether the point is a centroid or not, just use Vector -> ResearchTools -> Random Points. You may define to place a single point per each polygon in a layer. Also you may create centroids for initial polygons, delete points that do not intersect any polygon, save polygons without points as a separate layer, create random points for this polygosns and in the end copy these random points to centroids layer.

share|improve this answer
    
+1 Nice answer! never thought such a possibility existed.. –  vinayan Aug 23 '12 at 14:38
    
It was a nice answer and fixed my problem. Thanks SS_Rebelious. For the benefits of others, I needed this function to address a spatial query. I have two layers of the same theme (Open Space) from 2 different organisations. They are very similar but do not match spatially (can't use a spatial Equals). I need a one-to-one match to compare features but a spatial intersect query selects adjacent feature due to the overlap(poor topology). Converting one layer to points enables me to do a Within spatial query, which is not perfect but a much closer fit. –  Colin Aug 24 '12 at 4:04
1  
@Colin please accept this answer. (There is a tick mark on the left side.) –  underdark Aug 24 '12 at 6:33
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.