The LWC framework includes the NavigationMixin.Navigate functionality that can be used to obtain URLs or perform navigation to generated URLs. This supports a number of different page types, as covered in the documentation.
What I can't find is how to create a URL to a specific Visualforce page, with parameters and compatible with communities. Using the "web page" navigation type seems wrong to me, since the URL for a Visualforce page varies based on whether access is direct or within a community.
Do you know what the correct approach is for navigating from a flexipage via an LWC component to a Visualforce page in the same org, passing the page some parameters?