I'm still a beginner with automation , but maybe this helps you.
When a planeshape has a name and not (Net0) then it is connected to a net ( same as planeshape.net.name )
set pcbdoc = pcbapp.activedocument
set pshape = pcbdoc.planeshapes
You can go through each plane with a for each ..next statement
for each psh in pshape
msgbox psh.obstructtype 'returns the obstruct type of the plane Where 0 is none.Otherwise you will get the number of the constant epcbobstructtype
I've created a mini design for testing and do not see any property that shows my unconnected plane shape.
Even a net deleted in DxD is converted to 'Shield Area' connected to Net0 and not 'Isolated'...
Here is my test script:
For iLayer=1 To pcbDoc.LayerCount
set oPlaneShapes = pcbDoc.PlaneShapes(, iLayer)
If oPlaneShapes Is Nothing Then
Call AppendOutput("Failed to get Planes for Layer " & iLayer)
Call AppendOutput("# of Planes on Layer " & iLayer & " : " & oPlaneShapes.Count)
For i=1 To oPlaneShapes.count
set oNet = oPlaneShapes.Item(i).Net
set oPlaneClass = oPlaneShapes.Item(i).PlaneClass
Call AppendOutput("___ " & i & " Plane Name = " & oPlaneShapes.Item(i).Name _
& ", Plane Net = " & oNet.Name _
& ", Isolated = " & oPlaneShapes.Item(i).IsolatePlane _
& ", RouteObstructed = " & oPlaneShapes.Item(i).RouteObstructed _
From it's does report you cannot see that 3. plane is isolated and not connected:
# of Planes on Layer 1 : 0
# of Planes on Layer 2 : 1
___ 1. Plane Name = P3V3, Plane Net = P3V3, Isolated = False, RouteObstructed = False
# of Planes on Layer 3 : 4
___ 1. Plane Name = (Net0), Plane Net = (Net0), Isolated = False, RouteObstructed = False
___ 2. Plane Name = (Net0), Plane Net = (Net0), Isolated = False, RouteObstructed = True
___ 3. Plane Name = GND, Plane Net = GND, Isolated = False, RouteObstructed = False
___ 4. Plane Name = GND, Plane Net = GND, Isolated = False, RouteObstructed = False
# of Planes on Layer 4 : 0
Plane shapes are the complete shape that you drew. If you have parts with pads and routes it cuts the plane shape into areas. To check the areas you need to look at the Actual or Generated plane shapes. I am not sure what you are looking for since the tool shows you graphically what is connected and you can set it on how you want it to fill. You could have 10,000 little areas that didn't fill becasue they were smaller than the fill area you specified.
Plane_Class.png 48.4 KB
Of course the scenario you described is very complicated to implement, even to exactly define it is not easy
I'm only looking for a meanse to identify the isolated Plane Shapes that do not have any connection at all. In my screenshot the selected Plane Shape is such an isolated example: no pad or via is creating a connection to the required net.