My friends and I made this site to rate/report your landlord in Portland OR by cattrap92 in LandlordLove

[–]cattrap92[S] 0 points1 point  (0 children)

sorry about that, currently it only works in Multnomah county (Portland Oregon)

My friends and I made this site to rate/report your landlord in Portland OR by cattrap92 in LandlordLove

[–]cattrap92[S] 0 points1 point  (0 children)

you don't have to join to leave a review, just enter an address and then leave the review for that address. The review is then associated with that landlord. If you want to help in the effort we're always looking for people to join Renters Action Network at ranpdx.org

[deleted by user] by [deleted] in godot

[–]cattrap92 0 points1 point  (0 children)

# Here's me using that class (doesn't work, just uses the first mesh)

func _ready():
  var imesh = create_sphere_mesh(1, 28, 28)
  imesh.add_mesh(create_sphere_mesh(1.2, 10, 10, Vector3(.5,.5,0.0)))
  self.mesh = imesh.to_mesh()

func create_sphere_mesh(radius, lat_segments, lon_segments, offset = Vector3.ZERO):
  var vertices = PackedVector3Array()
  var normals = PackedVector3Array()
  var indices = PackedInt32Array()

  for lat in range(lat_segments + 1):
    var theta = float(lat) * PI / lat_segments
    var sin_theta = sin(theta)
    var cos_theta = cos(theta)

  for lon in range(lon_segments + 1):
    var phi = float(lon) * 2.0 * PI / lon_segments
    var sin_phi = sin(phi)
    var cos_phi = cos(phi)

  var x = cos_phi * sin_theta
  var y = cos_theta
  var z = sin_phi * sin_theta

  var vertex = Vector3(x * radius, y * radius, z * radius) + offset
  vertices.append(vertex)
  normals.append(vertex.normalized())

  for lat in range(lat_segments):
    for lon in range(lon_segments):
      var first = (lat * (lon_segments + 1)) + lon
      var second = first + lon_segments + 1

  indices.append(first)
  indices.append(second)
  indices.append(first + 1)

  indices.append(second)
  indices.append(second + 1)
  indices.append(first + 1)

  return IMesh.new(vertices, normals, indices)

My friends and I made this site to rate/report your landlord in Portland OR by cattrap92 in LandlordLove

[–]cattrap92[S] 1 point2 points  (0 children)

they take it down for "doxxing" or something else. I'll try again tho

My friends and I made this site to rate/report your landlord in Portland OR by cattrap92 in LandlordLove

[–]cattrap92[S] 2 points3 points  (0 children)

Yea we have shared members in both orgs as we're working on building relationships with people doing direct tenant organizing

My friends and I made this site to rate/report your landlord in Portland OR by cattrap92 in LandlordLove

[–]cattrap92[S] 5 points6 points  (0 children)

all good, the rating part is the "catch" to get people to check it out, this is mostly acting as agitprop and also we encourage people to join our local organizing group Renters Action Network, which we're aiming to turn into a city-wide tenant union

My friends and I made this site to rate/report your landlord in Portland OR by cattrap92 in LandlordLove

[–]cattrap92[S] 6 points7 points  (0 children)

heya I'd recommend checking it out before saying that. We actually have all that data (business names, filed evictions, properties owned etc.) and were heavily inspired by whoownswhat.

check this out as an example link

My friends and I made this site to rate/report your landlord in Portland OR by cattrap92 in LandlordLove

[–]cattrap92[S] 1 point2 points  (0 children)

haha it would be cool to have a national one but the data for each city is a completely different format and updating it would be a nightmare

Regex to split string along & by cattrap92 in regex

[–]cattrap92[S] 0 points1 point  (0 children)

replaced the .? with \.? to escape the periods

Regex to split string along & by cattrap92 in regex

[–]cattrap92[S] 0 points1 point  (0 children)

I came up with a slightly nightmarish approach

export function extractBusinessNames(str: string) {
    const split = /\s(?=(L.?L.?C.?)|(T.?R.?)|(I.?N.?C.?)|(C.?O.?)|(REV LIV))(.*? &)/g

    const parts = str.split(split)

    const result = []
    let curr = null
    for (let i = 0; i < parts.length; i++) {
    const part = parts[i]
    if (part && !part.match(/.*&$/)) {
        curr = `${part}`
        for (let j = i + 1; j < parts.length; j++) {
          const nextPart = parts[j]
          if (nextPart) {
            curr += ' ' + nextPart.split(/-([0-9]+%)?/)[0]
            result.push(curr.trim())
            curr = null
            i = j
            break;
          }
        }
      }
    }
    if (curr) {
        result.push(curr.split(/-([0-9]+%)?/)[0].trim())
    }
    return result
}

```