The problem of finding monotone paths between two given points has useful applications in path planning, and in particular, it is useful to look for minimum link paths. We are given a simple polygon *P* or a polygonal domain *D* with *n* vertices and a triplet of input parameters: (*s, t, d*), where *s* and *t* are two points in the plane and *d* is any direction. We show how to answer a query for the existence of a *d*-monotone path between *s* and *t* inside *P* (or *D*) in logarithmic time after preprocessing *P* in *O*(*En*) time, or *D* in *O*(*En + ER*log*R*) time, where *E* is the size of the visibility graph of *P* (or *D*), and *R* is the number of reflex vertices in *D*. Our approach is based on the novel idea utilizing the dual graph of the trapezoidal map of *P* (or *D*). For polygonal domains, our approach uses a trapezoidal map associated with each visibility edge of *D*, and we show how to compute this large set of trapezoidal maps efficiently. Furthermore, we show how to output a *minimum link**d*-monotone path between points *s* and *t*, for an arbitrary input triplet (*s, t, d*).