Hi Armando,

I found that there was lacking quotation marks around the name of the Layer. But now what follows is this then I do not know how to proceed.

Cheers,

Reinaldo



P.S. The modified macro, that I am running on Maptitude 4.6:

// Returns an options array where the name of the option is the Name of the polygon and the value is its perimeter
// it also returns the total perimeter of all areas found
//

Macro "GetPolygons" (sLayerName, sSetName, sNameField)

     SetLayer("Favelas2010")                                                                 // This problem was solved

    if sNameField = null then sNameField = "ID"
   
    rh = GetFirstRecord (sLayerName  + "|" +  sSetName)                 // Now stops here...
   
    arPerimeters = {}
    nTotper = o
    while rh <> null do
     nPer = GetPerimeter(rh2id(rh))
        arPerimeters.(sLayerName.(sNameField)) =  nPer
        nTotper = nTotper + nPer
        rh = GetNextRecord (sLayerName  + "|" +  sSetName ,, )
    end
     
    Return( { arPerimeters, nTotper} )

endMacro



Armando Scalise wrote:
 

HI Reinaldo


Here is some code that might help you do that.

I have not tested it, so bear in mind it might require some slight changes to do what you need.

Good luck


// Returns an options array where the name of the option is the Name of the polygon and the value is its perimeter
// it also returns the total perimeter of all areas found
// 

Macro "GetPolygons" ( sLayerName, sSetName, sNameField)

     SetLayer(sLayerName)

    if sNameField = null then sNameField = "ID"
    
    rh = GetFirstRecord (sLayerName  + "|" +  sSetName)
    
    arPerimeters = {}
    nTotper = o
    while rh <> null do
     nPer = GetPerimeter(rh2id(rh))
        arPerimeters.(sLayerName.(sNameField)) =  nPer
        nTotper = nTotper + nPer
        rh = GetNextRecord (sLayerName  + "|" +  sSetName ,, )
    end
    
    
    Return( { arPerimeters, nTotper} )

endMacro

2011/2/4 Reinaldo Paul Pérez Machado <[email protected]>
 

Hello,

Please, I would like to know how is it possible to get the corresponding perimeter of a bunch of polygons in a geographic files?

Thanks in advance. Any aid would be very much appreciated. Cheers,

Reinaldo




--
Armando Scalise

Reply via email to