Skip to main content
added 38 characters in body
Source Link
Taras
  • 34k
  • 4
  • 73
  • 148

Create a new attributattribute with fieldField calculator using this expression (replace orange on line 6 with the name of your "orange" layer):

area (
    intersection (
        $geometry,
        collect_geometries ( 
            overlay_intersects( 
                'orange', -- name of another layer
                $geometry
                )
            )
        )
    )
/area ($geometry)*100

The expression applied on the green layer (here as dynamic label for demonstration purpose), calculating the area of the overlapping part of the orange layer, divided by the area of the green layer. The overlapping part is highlighted in red:   

enter image description here

Create a new attribut with field calculator using this expression (replace orange on line 6 with the name of your "orange" layer):

area (
    intersection (
        $geometry,
        collect_geometries ( 
            overlay_intersects( 
                'orange',
                $geometry
))))
/area ($geometry)*100

The expression applied on the green layer (here as dynamic label for demonstration purpose), calculating the area of the overlapping part of the orange layer, divided by the area of the green layer. The overlapping part is highlighted in red:  enter image description here

Create a new attribute with Field calculator using this expression (replace orange on line 6 with the name of your "orange" layer):

area(
    intersection(
        $geometry,
        collect_geometries( 
            overlay_intersects(
                'orange', -- name of another layer
                $geometry
                )
            )
        )
    )
/area ($geometry)*100

The expression applied on the green layer (here as dynamic label for demonstration purpose), calculating the area of the overlapping part of the orange layer, divided by the area of the green layer. The overlapping part is highlighted in red: 

enter image description here

Source Link
Babel
  • 74.9k
  • 15
  • 87
  • 227

Create a new attribut with field calculator using this expression (replace orange on line 6 with the name of your "orange" layer):

area (
    intersection (
        $geometry,
        collect_geometries ( 
            overlay_intersects( 
                'orange',
                $geometry
))))
/area ($geometry)*100

The expression applied on the green layer (here as dynamic label for demonstration purpose), calculating the area of the overlapping part of the orange layer, divided by the area of the green layer. The overlapping part is highlighted in red: enter image description here